1 <?xml version="1.0" encoding="UTF-8"?>
   2 <!--   
   3    Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
   4    
   5    DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   6    
   7    The contents of this file are subject to the terms of either the Universal Permissive License 
   8    v 1.0 as shown at http://oss.oracle.com/licenses/upl
   9    
  10    or the following license:
  11    
  12    Redistribution and use in source and binary forms, with or without modification, are permitted
  13    provided that the following conditions are met:
  14    
  15    1. Redistributions of source code must retain the above copyright notice, this list of conditions
  16    and the following disclaimer.
  17    
  18    2. Redistributions in binary form must reproduce the above copyright notice, this list of
  19    conditions and the following disclaimer in the documentation and/or other materials provided with
  20    the distribution.
  21    
  22    3. Neither the name of the copyright holder nor the names of its contributors may be used to
  23    endorse or promote products derived from this software without specific prior written permission.
  24    
  25    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
  26    IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  27    FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
  28    CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  29    DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  30    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  31    WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
  32    WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  33 -->
  34 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  35         <modelVersion>4.0.0</modelVersion>
  36         <groupId>org.openjdk.jmc</groupId>
  37         <artifactId>missioncontrol</artifactId>
  38         <version>7.0.0-SNAPSHOT</version>
  39         <packaging>pom</packaging>
  40         <name>JDK Mission Control</name>
  41         <description>Java Mission Control is an advanced set of tools that enables 
  42                 efficient and detailed analysis of the extensive of data collected by 
  43                 Java Flight Recorder. The tool chain enables developers and 
  44                 administrators to collect and analyze data from Java applications 
  45                 running locally or deployed in production environments.
  46         </description>
  47         <url>http://jdk.java.net/jmc</url>
  48         <licenses>
  49                 <license>
  50                         <name>Universal Permissive License Version 1.0</name>
  51                         <url>http://oss.oracle.com/licenses/upl</url>
  52                         <distribution>repo</distribution>
  53                 </license>
  54         </licenses>
  55         <organization>
  56                 <name>Oracle</name>
  57                 <url>https://www.oracle.com</url>
  58         </organization>
  59         <issueManagement>
  60                 <system>JIRA</system>
  61                 <url>https://bugs.openjdk.java.net/projects/JMC/issues</url>
  62         </issueManagement>
  63         <mailingLists>
  64                 <mailingList>
  65                         <name>jmc dev</name>
  66                         <subscribe>http://mail.openjdk.java.net/mailman/listinfo/jmc-dev</subscribe>
  67                         <unsubscribe>http://mail.openjdk.java.net/mailman/listinfo/jmc-dev</unsubscribe>
  68                         <archive>http://mail.openjdk.java.net/pipermail/jmc-dev/</archive>
  69                 </mailingList>
  70         </mailingLists>
  71         <modules>
  72                 <module>application</module>
  73                 <module>releng</module>
  74         </modules>
  75         <properties>
  76                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  77                 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  78                 <tycho-version>1.2.0</tycho-version>
  79                 <buildId>${user.name}</buildId>
  80                 <scmConnection>scm:hg:http://hg.openjdk.java.net/jmc/jmc</scmConnection>
  81         </properties>
  82         <scm>
  83                 <connection>${scmConnection}</connection>
  84         </scm>
  85         <distributionManagement>
  86                         <snapshotRepository>
  87                         <id>jmc-publish-snapshot</id>
  88                         <url>${snapshot.repo}</url>
  89                 </snapshotRepository>
  90         </distributionManagement>
  91         <profiles>
  92                 <profile>
  93                         <id>photon</id>
  94                         <activation>
  95                                 <activeByDefault>true</activeByDefault>
  96                         </activation>
  97                         <build>
  98                                 <plugins>
  99                                         <plugin>
 100                                                 <groupId>org.eclipse.tycho</groupId>
 101                                                 <artifactId>target-platform-configuration</artifactId>
 102                                                 <version>${tycho-version}</version>
 103                                                 <configuration>
 104                                                         <target>
 105                                                                 <artifact>
 106                                                                         <groupId>org.openjdk.jmc</groupId>
 107                                                                         <artifactId>platform-definition-photon</artifactId>
 108                                                                         <version>7.0.0-SNAPSHOT</version>
 109                                                                 </artifact>
 110                                                         </target>
 111                                                 </configuration>
 112                                         </plugin>
 113                                 </plugins>
 114                         </build>
 115                 </profile>
 116                 <profile>
 117                         <id>oxygen</id>
 118                         <build>
 119                                 <plugins>
 120                                         <plugin>
 121                                                 <groupId>org.eclipse.tycho</groupId>
 122                                                 <artifactId>target-platform-configuration</artifactId>
 123                                                 <version>${tycho-version}</version>
 124                                                 <configuration>
 125                                                         <target>
 126                                                                 <artifact>
 127                                                                         <groupId>org.openjdk.jmc</groupId>
 128                                                                         <artifactId>platform-definition-oxygen</artifactId>
 129                                                                         <version>7.0.0-SNAPSHOT</version>
 130                                                                 </artifact>
 131                                                         </target>
 132                                                 </configuration>
 133                                         </plugin>
 134                                 </plugins>
 135                         </build>
 136                 </profile>
 137         </profiles>
 138         <build>
 139                 <plugins>
 140                         <plugin>
 141                                 <groupId>org.apache.maven.plugins</groupId>
 142                                 <artifactId>maven-deploy-plugin</artifactId>
 143                                 <version>2.8.2</version>
 144                                 <configuration>
 145                                         <skip>true</skip>
 146                                 </configuration>
 147                         </plugin>
 148                         <plugin>
 149                                 <groupId>org.eclipse.tycho</groupId>
 150                                 <artifactId>target-platform-configuration</artifactId>
 151                                 <version>${tycho-version}</version>
 152                                 <configuration>
 153                                         <environments>
 154                                                 <environment>
 155                                                         <os>win32</os>
 156                                                         <ws>win32</ws>
 157                                                         <arch>x86_64</arch>
 158                                                 </environment>
 159                                                 <environment>
 160                                                         <os>linux</os>
 161                                                         <ws>gtk</ws>
 162                                                         <arch>x86_64</arch>
 163                                                 </environment>
 164                                                 <environment>
 165                                                         <os>macosx</os>
 166                                                         <ws>cocoa</ws>
 167                                                         <arch>x86_64</arch>
 168                                                 </environment>
 169                                         </environments>
 170                                 </configuration>
 171                         </plugin>
 172                         <plugin>
 173                                 <groupId>org.eclipse.tycho</groupId>
 174                                 <artifactId>tycho-maven-plugin</artifactId>
 175                                 <version>${tycho-version}</version>
 176                                 <extensions>true</extensions>
 177                         </plugin>
 178                         <plugin>
 179                                 <groupId>org.eclipse.tycho</groupId>
 180                                 <artifactId>tycho-compiler-plugin</artifactId>
 181                                 <version>${tycho-version}</version>
 182                                 <configuration>
 183                                         <useProjectSettings>false</useProjectSettings>
 184                                 </configuration>
 185                         </plugin>
 186                         <plugin>
 187                                 <groupId>org.eclipse.tycho</groupId>
 188                                 <artifactId>tycho-p2-repository-plugin</artifactId>
 189                                 <version>${tycho-version}</version>
 190                                 <configuration>
 191                                         <includeAllDependencies>true</includeAllDependencies>
 192                                 </configuration>
 193                         </plugin>
 194                         <plugin>
 195                                 <groupId>org.eclipse.tycho</groupId>
 196                                 <artifactId>tycho-packaging-plugin</artifactId>
 197                                 <version>${tycho-version}</version>
 198                                 <executions>
 199                                         <execution>
 200                                                 <id>build-qualifier</id>
 201                                                 <phase>validate</phase>
 202                                                 <goals>
 203                                                         <goal>build-qualifier</goal>
 204                                                 </goals>
 205                                         </execution>
 206                                 </executions>
 207                                 <configuration>
 208                                         <archive>
 209                                                 <manifestEntries>
 210                                                         <Built-By/>
 211                                                 </manifestEntries>
 212                                         </archive>
 213                                 </configuration>
 214                         </plugin>
 215                         <plugin>
 216                                 <groupId>org.commonjava.maven.plugins</groupId>
 217                                 <artifactId>directory-maven-plugin</artifactId>
 218                                 <version>0.2</version>
 219                                 <executions>
 220                                         <execution>
 221                                                 <id>directories</id>
 222                                                 <goals>
 223                                                         <goal>highest-basedir</goal>
 224                                                 </goals>
 225                                                 <phase>initialize</phase>
 226                                                 <configuration>
 227                                                         <property>rootDir</property>
 228                                                 </configuration>
 229                                         </execution>
 230                                 </executions>
 231                         </plugin>
 232                         <plugin>
 233                                 <groupId>com.github.spotbugs</groupId>
 234                                 <artifactId>spotbugs-maven-plugin</artifactId>
 235                                 <version>3.1.3</version>
 236                                 <configuration>
 237                                         <effort>Max</effort>
 238                                         <threshold>Low</threshold>
 239                                         <excludeFilterFile>${rootDir}/configuration/spotbugs/spotbugs-exclude.xml</excludeFilterFile>
 240                                 </configuration>
 241                                 <executions>
 242                                         <execution>
 243                                                 <goals>
 244                                                         <goal>check</goal>
 245                                                 </goals>
 246                                         </execution>
 247                                 </executions>
 248                         </plugin>
 249                         <plugin>
 250                                 <groupId>org.codehaus.mojo</groupId>
 251                                 <artifactId>buildnumber-maven-plugin</artifactId>
 252                                 <version>1.4</version>
 253                                 <executions>
 254                                         <execution>
 255                                                 <phase>initialize</phase>
 256                                                 <goals>
 257                                                         <goal>create</goal>
 258                                                 </goals>
 259                                                 <configuration>
 260                                                         <doCheck>false</doCheck>
 261                                                         <doUpdate>false</doUpdate>
 262                                                         <getRevisionOnlyOnce>true</getRevisionOnlyOnce>
 263                                                         <revisionOnScmFailure>no.scm.config.in.pom</revisionOnScmFailure>
 264                                                 </configuration>
 265                                         </execution>
 266                                         <execution>
 267                                                 <id>build.date</id>
 268                                                 <phase>initialize</phase>
 269                                                 <goals>
 270                                                         <goal>create-timestamp</goal>
 271                                                 </goals>
 272                                                 <configuration>
 273                                                         <timestampFormat>yyyy-MM-dd</timestampFormat>
 274                                                         <timestampPropertyName>build.date</timestampPropertyName>
 275                                                 </configuration>
 276                                         </execution>
 277                                         <!-- TODO: Maybe add the create-metadata goal after we've made the switch to Mercurial  -->
 278                                 </executions>
 279                         </plugin>
 280                         <plugin>
 281                                 <groupId>org.apache.maven.plugins</groupId>
 282                                 <artifactId>maven-enforcer-plugin</artifactId>
 283                                 <version>3.0.0-M1</version>
 284                                 <executions>
 285                                         <execution>
 286                                                 <id>enforce-java</id>
 287                                                 <goals>
 288                                                         <goal>enforce</goal>
 289                                                 </goals>
 290                                                 <configuration>
 291                                                         <rules>
 292                                                                 <requireJavaVersion>
 293                                                                         <version>[1.8.0-40,)</version>
 294                                                                         <message>Building JMC requires Java 8 version JDK 1.8.0_40 or later</message>
 295                                                                 </requireJavaVersion>
 296                                                         </rules>          
 297                                                 </configuration>
 298                                         </execution>
 299                                         <execution>
 300                                                 <id>enforce-maven</id>
 301                                                 <goals>
 302                                                         <goal>enforce</goal>
 303                                                 </goals>
 304                                                 <configuration>
 305                                                         <rules>
 306                                                                 <requireMavenVersion>
 307                                                                         <version>3.3.1</version>
 308                                                                         <message>Building JMC requires at least Maven 3.3.1</message>
 309                                                                 </requireMavenVersion>
 310                                                         </rules>
 311                                                 </configuration>
 312                                         </execution>
 313                                 </executions>
 314                         </plugin>
 315                 </plugins>
 316                 <pluginManagement>
 317                         <plugins>
 318                                 <plugin>
 319                                         <groupId>org.eclipse.m2e</groupId>
 320                                         <artifactId>lifecycle-mapping</artifactId>
 321                                         <version>1.0.0</version>
 322                                         <configuration>
 323                                                 <lifecycleMappingMetadata>
 324                                                         <pluginExecutions>
 325                                                                 <pluginExecution>
 326                                                                         <pluginExecutionFilter>
 327                                                                                 <groupId>org.codehaus.mojo</groupId>
 328                                                                                 <artifactId>buildnumber-maven-plugin</artifactId>
 329                                                                                 <versionRange>[1.2,)</versionRange>
 330                                                                                 <goals>
 331                                                                                         <goal>create-timestamp</goal>
 332                                                                                         <goal>hgchangeset</goal>
 333                                                                                 </goals>
 334                                                                         </pluginExecutionFilter>
 335                                                                         <action>
 336                                                                                 <execute>
 337                                                                                         <runOnConfiguration>true</runOnConfiguration>
 338                                                                                         <runOnIncremental>true</runOnIncremental>
 339                                                                                 </execute>
 340                                                                         </action>
 341                                                                 </pluginExecution>
 342                                                         </pluginExecutions>
 343                                                 </lifecycleMappingMetadata>
 344                                         </configuration>
 345                                 </plugin>
 346                                 <plugin>
 347                                         <groupId>org.apache.maven.plugins</groupId>
 348                                         <artifactId>maven-resources-plugin</artifactId>
 349                                         <version>3.0.2</version>
 350                                         <executions>
 351                                                 <execution>
 352                                                         <id>copy-resources</id>
 353                                                         <phase>process-resources</phase>
 354                                                         <goals>
 355                                                                 <goal>copy-resources</goal>
 356                                                         </goals>
 357                                                         <configuration>
 358                                                                 <outputDirectory>${project.build.directory}/classes/license</outputDirectory>
 359                                                                 <resources>
 360                                                                         <resource>
 361                                                                                 <directory>${rootDir}/license</directory>
 362                                                                                 <includes>
 363                                                                                         <include>LICENSE.txt</include>
 364                                                                                 </includes>
 365                                                                         </resource>
 366                                                                 </resources>
 367                                                         </configuration>
 368                                                 </execution>
 369                                                 <execution>
 370                                                         <id>copy-resources-javadoc</id>
 371                                                         <phase>prepare-package</phase>
 372                                                         <goals>
 373                                                                 <goal>copy-resources</goal>
 374                                                         </goals>
 375                                                         <configuration>
 376                                                                 <outputDirectory>${project.build.directory}/apidocs/license</outputDirectory>
 377                                                                 <resources>
 378                                                                         <resource>
 379                                                                                 <directory>${rootDir}/license</directory>
 380                                                                                 <includes>
 381                                                                                         <include>LICENSE.txt</include>
 382                                                                                 </includes>
 383                                                                         </resource>
 384                                                                 </resources>
 385                                                         </configuration>
 386                                                 </execution>
 387                                         </executions>
 388                                 </plugin>
 389                         </plugins>
 390                 </pluginManagement>
 391         </build>
 392 </project>