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                 <maven.buildnumber.version>1.4</maven.buildnumber.version>
  80                 <maven.deploy.version>2.8.2</maven.deploy.version>
  81                 <maven.directory.version>0.2</maven.directory.version>
  82                 <maven.enforcer.version>3.0.0-M1</maven.enforcer.version>
  83                 <maven.resources.version>3.0.2</maven.resources.version>
  84                 <m2e.lifecycle.version>1.0.0</m2e.lifecycle.version>
  85                 <spotbugs.version>3.1.3</spotbugs.version>
  86                 <buildId>${user.name}</buildId>
  87                 <scmConnection>scm:hg:http://hg.openjdk.java.net/jmc/jmc</scmConnection>
  88         </properties>
  89         <scm>
  90                 <connection>${scmConnection}</connection>
  91         </scm>
  92         <distributionManagement>
  93                 <snapshotRepository>
  94                         <id>jmc-publish-snapshot</id>
  95                         <url>${snapshot.repo}</url>
  96                 </snapshotRepository>
  97         </distributionManagement>
  98         <profiles>
  99                 <profile>
 100                         <id>photon</id>
 101                         <activation>
 102                                 <activeByDefault>true</activeByDefault>
 103                         </activation>
 104                         <build>
 105                                 <plugins>
 106                                         <plugin>
 107                                                 <groupId>org.eclipse.tycho</groupId>
 108                                                 <artifactId>target-platform-configuration</artifactId>
 109                                                 <version>${tycho.version}</version>
 110                                                 <configuration>
 111                                                         <target>
 112                                                                 <artifact>
 113                                                                         <groupId>org.openjdk.jmc</groupId>
 114                                                                         <artifactId>platform-definition-photon</artifactId>
 115                                                                         <version>7.0.0-SNAPSHOT</version>
 116                                                                 </artifact>
 117                                                         </target>
 118                                                 </configuration>
 119                                         </plugin>
 120                                 </plugins>
 121                         </build>
 122                 </profile>
 123                 <profile>
 124                         <id>oxygen</id>
 125                         <build>
 126                                 <plugins>
 127                                         <plugin>
 128                                                 <groupId>org.eclipse.tycho</groupId>
 129                                                 <artifactId>target-platform-configuration</artifactId>
 130                                                 <version>${tycho.version}</version>
 131                                                 <configuration>
 132                                                         <target>
 133                                                                 <artifact>
 134                                                                         <groupId>org.openjdk.jmc</groupId>
 135                                                                         <artifactId>platform-definition-oxygen</artifactId>
 136                                                                         <version>7.0.0-SNAPSHOT</version>
 137                                                                 </artifact>
 138                                                         </target>
 139                                                 </configuration>
 140                                         </plugin>
 141                                 </plugins>
 142                         </build>
 143                 </profile>
 144                 <profile>
 145                         <id>2018-09</id>
 146                         <build>
 147                                 <plugins>
 148                                         <plugin>
 149                                                 <groupId>org.eclipse.tycho</groupId>
 150                                                 <artifactId>target-platform-configuration</artifactId>
 151                                                 <version>${tycho.version}</version>
 152                                                 <configuration>
 153                                                         <target>
 154                                                                 <artifact>
 155                                                                         <groupId>org.openjdk.jmc</groupId>
 156                                                                         <artifactId>platform-definition-2018-09</artifactId>
 157                                                                         <version>7.0.0-SNAPSHOT</version>
 158                                                                 </artifact>
 159                                                         </target>
 160                                                 </configuration>
 161                                         </plugin>
 162                                 </plugins>
 163                         </build>
 164                 </profile>
 165         </profiles>
 166         <build>
 167                 <plugins>
 168                         <plugin>
 169                                 <groupId>org.apache.maven.plugins</groupId>
 170                                 <artifactId>maven-deploy-plugin</artifactId>
 171                                 <version>${maven.deploy.version}</version>
 172                                 <configuration>
 173                                         <skip>true</skip>
 174                                 </configuration>
 175                         </plugin>
 176                         <plugin>
 177                                 <groupId>org.eclipse.tycho</groupId>
 178                                 <artifactId>target-platform-configuration</artifactId>
 179                                 <version>${tycho.version}</version>
 180                                 <configuration>
 181                                         <environments>
 182                                                 <environment>
 183                                                         <os>win32</os>
 184                                                         <ws>win32</ws>
 185                                                         <arch>x86_64</arch>
 186                                                 </environment>
 187                                                 <environment>
 188                                                         <os>linux</os>
 189                                                         <ws>gtk</ws>
 190                                                         <arch>x86_64</arch>
 191                                                 </environment>
 192                                                 <environment>
 193                                                         <os>macosx</os>
 194                                                         <ws>cocoa</ws>
 195                                                         <arch>x86_64</arch>
 196                                                 </environment>
 197                                         </environments>
 198                                 </configuration>
 199                         </plugin>
 200                         <plugin>
 201                                 <groupId>org.eclipse.tycho</groupId>
 202                                 <artifactId>tycho-maven-plugin</artifactId>
 203                                 <version>${tycho.version}</version>
 204                                 <extensions>true</extensions>
 205                         </plugin>
 206                         <plugin>
 207                                 <groupId>org.eclipse.tycho</groupId>
 208                                 <artifactId>tycho-compiler-plugin</artifactId>
 209                                 <version>${tycho.version}</version>
 210                                 <configuration>
 211                                         <useProjectSettings>false</useProjectSettings>
 212                                 </configuration>
 213                         </plugin>
 214                         <plugin>
 215                                 <groupId>org.eclipse.tycho</groupId>
 216                                 <artifactId>tycho-p2-repository-plugin</artifactId>
 217                                 <version>${tycho.version}</version>
 218                                 <configuration>
 219                                         <includeAllDependencies>true</includeAllDependencies>
 220                                 </configuration>
 221                         </plugin>
 222                         <plugin>
 223                                 <groupId>org.eclipse.tycho</groupId>
 224                                 <artifactId>tycho-packaging-plugin</artifactId>
 225                                 <version>${tycho.version}</version>
 226                                 <executions>
 227                                         <execution>
 228                                                 <id>build-qualifier</id>
 229                                                 <phase>validate</phase>
 230                                                 <goals>
 231                                                         <goal>build-qualifier</goal>
 232                                                 </goals>
 233                                         </execution>
 234                                 </executions>
 235                                 <configuration>
 236                                         <archive>
 237                                                 <manifestEntries>
 238                                                         <Built-By />
 239                                                 </manifestEntries>
 240                                         </archive>
 241                                 </configuration>
 242                         </plugin>
 243                         <plugin>
 244                                 <groupId>org.commonjava.maven.plugins</groupId>
 245                                 <artifactId>directory-maven-plugin</artifactId>
 246                                 <version>${maven.directory.version}</version>
 247                                 <executions>
 248                                         <execution>
 249                                                 <id>directories</id>
 250                                                 <goals>
 251                                                         <goal>highest-basedir</goal>
 252                                                 </goals>
 253                                                 <phase>initialize</phase>
 254                                                 <configuration>
 255                                                         <property>rootDir</property>
 256                                                 </configuration>
 257                                         </execution>
 258                                 </executions>
 259                         </plugin>
 260                         <plugin>
 261                                 <groupId>com.github.spotbugs</groupId>
 262                                 <artifactId>spotbugs-maven-plugin</artifactId>
 263                                 <version>${spotbugs.version}</version>
 264                                 <configuration>
 265                                         <effort>Max</effort>
 266                                         <threshold>Low</threshold>
 267                                         <excludeFilterFile>${rootDir}/configuration/spotbugs/spotbugs-exclude.xml</excludeFilterFile>
 268                                 </configuration>
 269                                 <executions>
 270                                         <execution>
 271                                                 <goals>
 272                                                         <goal>check</goal>
 273                                                 </goals>
 274                                         </execution>
 275                                 </executions>
 276                         </plugin>
 277                         <plugin>
 278                                 <groupId>org.codehaus.mojo</groupId>
 279                                 <artifactId>buildnumber-maven-plugin</artifactId>
 280                                 <version>${maven.buildnumber.version}</version>
 281                                 <executions>
 282                                         <execution>
 283                                                 <phase>initialize</phase>
 284                                                 <goals>
 285                                                         <goal>create</goal>
 286                                                 </goals>
 287                                                 <configuration>
 288                                                         <doCheck>false</doCheck>
 289                                                         <doUpdate>false</doUpdate>
 290                                                         <getRevisionOnlyOnce>true</getRevisionOnlyOnce>
 291                                                         <revisionOnScmFailure>no.scm.config.in.pom</revisionOnScmFailure>
 292                                                 </configuration>
 293                                         </execution>
 294                                         <execution>
 295                                                 <id>build.date</id>
 296                                                 <phase>initialize</phase>
 297                                                 <goals>
 298                                                         <goal>create-timestamp</goal>
 299                                                 </goals>
 300                                                 <configuration>
 301                                                         <timestampFormat>yyyy-MM-dd</timestampFormat>
 302                                                         <timestampPropertyName>build.date</timestampPropertyName>
 303                                                 </configuration>
 304                                         </execution>
 305                                         <!-- TODO: Maybe add the create-metadata goal after we've made the switch to Mercurial -->
 306                                 </executions>
 307                         </plugin>
 308                         <plugin>
 309                                 <groupId>org.apache.maven.plugins</groupId>
 310                                 <artifactId>maven-enforcer-plugin</artifactId>
 311                                 <version>${maven.enforcer.version}</version>
 312                                 <executions>
 313                                         <execution>
 314                                                 <id>enforce-java</id>
 315                                                 <goals>
 316                                                         <goal>enforce</goal>
 317                                                 </goals>
 318                                                 <configuration>
 319                                                         <rules>
 320                                                                 <requireJavaVersion>
 321                                                                         <version>[1.8.0-40,)</version>
 322                                                                         <message>Building JMC requires Java 8 version JDK 1.8.0_40 or later</message>
 323                                                                 </requireJavaVersion>
 324                                                         </rules>
 325                                                 </configuration>
 326                                         </execution>
 327                                         <execution>
 328                                                 <id>enforce-maven</id>
 329                                                 <goals>
 330                                                         <goal>enforce</goal>
 331                                                 </goals>
 332                                                 <configuration>
 333                                                         <rules>
 334                                                                 <requireMavenVersion>
 335                                                                         <version>3.3.1</version>
 336                                                                         <message>Building JMC requires at least Maven 3.3.1</message>
 337                                                                 </requireMavenVersion>
 338                                                         </rules>
 339                                                 </configuration>
 340                                         </execution>
 341                                 </executions>
 342                         </plugin>
 343                 </plugins>
 344                 <pluginManagement>
 345                         <plugins>
 346                                 <plugin>
 347                                         <groupId>org.eclipse.m2e</groupId>
 348                                         <artifactId>lifecycle-mapping</artifactId>
 349                                         <version>${m2e.lifecycle.version}</version>
 350                                         <configuration>
 351                                                 <lifecycleMappingMetadata>
 352                                                         <pluginExecutions>
 353                                                                 <pluginExecution>
 354                                                                         <pluginExecutionFilter>
 355                                                                                 <groupId>org.codehaus.mojo</groupId>
 356                                                                                 <artifactId>buildnumber-maven-plugin</artifactId>
 357                                                                                 <versionRange>[1.2,)</versionRange>
 358                                                                                 <goals>
 359                                                                                         <goal>create-timestamp</goal>
 360                                                                                         <goal>hgchangeset</goal>
 361                                                                                 </goals>
 362                                                                         </pluginExecutionFilter>
 363                                                                         <action>
 364                                                                                 <execute>
 365                                                                                         <runOnConfiguration>true</runOnConfiguration>
 366                                                                                         <runOnIncremental>true</runOnIncremental>
 367                                                                                 </execute>
 368                                                                         </action>
 369                                                                 </pluginExecution>
 370                                                         </pluginExecutions>
 371                                                 </lifecycleMappingMetadata>
 372                                         </configuration>
 373                                 </plugin>
 374                                 <plugin>
 375                                         <groupId>org.apache.maven.plugins</groupId>
 376                                         <artifactId>maven-resources-plugin</artifactId>
 377                                         <version>${maven.resources.version}</version>
 378                                         <executions>
 379                                                 <execution>
 380                                                         <id>copy-resources</id>
 381                                                         <phase>process-resources</phase>
 382                                                         <goals>
 383                                                                 <goal>copy-resources</goal>
 384                                                         </goals>
 385                                                         <configuration>
 386                                                                 <outputDirectory>${project.build.directory}/classes/license</outputDirectory>
 387                                                                 <resources>
 388                                                                         <resource>
 389                                                                                 <directory>${rootDir}/license</directory>
 390                                                                                 <includes>
 391                                                                                         <include>LICENSE.txt</include>
 392                                                                                 </includes>
 393                                                                         </resource>
 394                                                                 </resources>
 395                                                         </configuration>
 396                                                 </execution>
 397                                                 <execution>
 398                                                         <id>copy-resources-javadoc</id>
 399                                                         <phase>prepare-package</phase>
 400                                                         <goals>
 401                                                                 <goal>copy-resources</goal>
 402                                                         </goals>
 403                                                         <configuration>
 404                                                                 <outputDirectory>${project.build.directory}/apidocs/license</outputDirectory>
 405                                                                 <resources>
 406                                                                         <resource>
 407                                                                                 <directory>${rootDir}/license</directory>
 408                                                                                 <includes>
 409                                                                                         <include>LICENSE.txt</include>
 410                                                                                 </includes>
 411                                                                         </resource>
 412                                                                 </resources>
 413                                                         </configuration>
 414                                                 </execution>
 415                                                 <execution>
 416                                                         <id>copy-resources-to-linux</id>
 417                                                         <phase>prepare-package</phase>
 418                                                         <goals>
 419                                                                 <goal>copy-resources</goal>
 420                                                         </goals>
 421                                                         <configuration>
 422                                                                 <outputDirectory>${project.build.directory}/products/org.openjdk.jmc/linux/gtk/x86_64/legal
 423                                                                 </outputDirectory>
 424                                                                 <resources>
 425                                                                         <resource>
 426                                                                                 <directory>${rootDir}/license</directory>
 427                                                                                 <includes>
 428                                                                                         <include>LICENSE.txt</include>
 429                                                                                         <include>THIRDPARTYREADME.txt</include>
 430                                                                                         <include>COPYRIGHT</include>
 431                                                                                 </includes>
 432                                                                         </resource>
 433                                                                 </resources>
 434                                                         </configuration>
 435                                                 </execution>
 436                                                 <execution>
 437                                                         <id>copy-resources-to-windows</id>
 438                                                         <phase>prepare-package</phase>
 439                                                         <goals>
 440                                                                 <goal>copy-resources</goal>
 441                                                         </goals>
 442                                                         <configuration>
 443                                                                 <outputDirectory>${project.build.directory}/products/org.openjdk.jmc/win32/win32/x86_64/legal
 444                                                                 </outputDirectory>
 445                                                                 <resources>
 446                                                                         <resource>
 447                                                                                 <directory>${rootDir}/license</directory>
 448                                                                                 <includes>
 449                                                                                         <include>LICENSE.txt</include>
 450                                                                                         <include>THIRDPARTYREADME.txt</include>
 451                                                                                         <include>COPYRIGHT</include>
 452                                                                                 </includes>
 453                                                                         </resource>
 454                                                                 </resources>
 455                                                         </configuration>
 456                                                 </execution>
 457                                                 <execution>
 458                                                         <id>copy-resources-to-mac</id>
 459                                                         <phase>prepare-package</phase>
 460                                                         <goals>
 461                                                                 <goal>copy-resources</goal>
 462                                                         </goals>
 463                                                         <configuration>
 464                                                                 <outputDirectory>${project.build.directory}/products/org.openjdk.jmc/macosx/cocoa/x86_64/legal
 465                                                                 </outputDirectory>
 466                                                                 <resources>
 467                                                                         <resource>
 468                                                                                 <directory>${rootDir}/license</directory>
 469                                                                                 <includes>
 470                                                                                         <include>LICENSE.txt</include>
 471                                                                                         <include>THIRDPARTYREADME.txt</include>
 472                                                                                         <include>COPYRIGHT</include>
 473                                                                                 </includes>
 474                                                                         </resource>
 475                                                                 </resources>
 476                                                         </configuration>
 477                                                 </execution>
 478                                         </executions>
 479                                 </plugin>
 480                         </plugins>
 481                 </pluginManagement>
 482         </build>
 483 </project>