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