| POM文件内容: |
<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">
<modelVersion>4.0.0</modelVersion>
<groupId>javax.measure</groupId>
<artifactId>unit-api</artifactId>
<version>2.0</version>
<name>Units of Measurement API</name>
<packaging>bundle</packaging>
<url>http://unitsofmeasurement.github.io/unit-api/</url>
<description>Units of Measurement Standard - This JSR specifies Java packages for modeling and working with measurement values, quantities and their corresponding units.</description>
<organization>
<name>Jean-Marie Dautelle, Werner Keil, Otavio Santana</name>
<url>http://unitsofmeasurement.github.io</url>
</organization>
<inceptionYear>2014</inceptionYear>
<licenses>
<license>
<name>BSD</name>
<url>LICENSE</url>
<distribution>manual</distribution>
</license>
</licenses>
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>9</version>
</parent>
<!-- Issue managements and mailing lists. -->
<issueManagement>
<system>GitHub</system>
<url>https://github.com/unitsofmeasurement/unit-api/issues</url>
</issueManagement>
<ciManagement>
<system>CircleCI</system>
<url>https://circleci.com/gh/unitsofmeasurement/unit-api</url>
</ciManagement>
<mailingLists>
<mailingList>
<name>Units-Dev</name>
<subscribe>http://groups.google.com/group/units-dev/subscribe</subscribe>
<post>units-dev@googlegroups.com</post>
</mailingList>
<mailingList>
<name>Units-Users</name>
<subscribe>http://groups.google.com/group/units-users/subscribe</subscribe>
<post>units-users@googlegroups.com</post>
</mailingList>
</mailingLists>
<scm>
<connection>scm:git:git@github.com:unitsofmeasurement/unit-api.git</connection>
<developerConnection>scm:git:git@github.com:unitsofmeasurement/unit-api.git</developerConnection>
<url>https://github.com/unitsofmeasurement/unit-api</url>
</scm>
<!-- Build Settings -->
<properties>
<basedir>.</basedir>
<sourceEncoding>UTF-8</sourceEncoding> <!-- in Maven 3. -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>${sourceEncoding}</project.reporting.outputEncoding>
<jdkVersion>8</jdkVersion>
<jdkOptionalVersion>9</jdkOptionalVersion>
<project.build.javaVersion>${jdkVersion}</project.build.javaVersion>
<maven.compile.targetLevel>${jdkVersion}</maven.compile.targetLevel>
<maven.compile.sourceLevel>${jdkVersion}</maven.compile.sourceLevel>
<additionalparam>-Xdoclint:none</additionalparam>
<thisYear>2019</thisYear>
<!-- Plugins -->
<felix.version>3.4.0</felix.version>
<github.maven.version>0.12</github.maven.version>
<github.global.server>github</github.global.server>
<maven.resources.version>3.1.0</maven.resources.version>
<maven.compile.version>3.8.1</maven.compile.version>
<maven.site.version>3.7.1</maven.site.version>
<maven.jar.version>3.1.0</maven.jar.version>
<maven.javadoc.version>3.1.0</maven.javadoc.version>
<maven.surefire.version>2.22.1</maven.surefire.version>
<maven.surefire-report.version>2.22.1</maven.surefire-report.version>
<jacoco.plugin.version>0.8.3</jacoco.plugin.version>
<junit.jupiter.version>5.5.0</junit.jupiter.version>
<!--Exclude the files Here -->
<sonar.exclusions>src/main/java/javax/measure/BinaryPrefix.java,src/main/java/javax/measure/MetricPrefix.java</sonar.exclusions>
</properties>
<!-- Developers and Contributors -->
<developers>
<developer>
<id>dautelle</id>
<name>Jean-Marie Dautelle</name>
<email>jean-marie@dautelle.com</email>
<organization>Airbus</organization>
<organizationUrl>http://www.airbus.com</organizationUrl>
<timezone>+1</timezone>
<roles>
<role>Architect</role>
<role>Java Developer</role>
<role>Spec Lead</role>
</roles>
</developer>
<developer>
<id>keilw</id>
<name>Werner Keil</name>
<email>werner.keil@gmx.net</email>
<organization>Creative Arts & Technologies</organization>
<organizationUrl>http://www.catmedia.us</organizationUrl>
<timezone>+1</timezone>
<roles>
<role>Architect</role>
<role>Java Developer</role>
<role>Spec Lead</role>
</roles>
</developer>
<developer>
<id>otaviojava</id>
<name>Ot谩vio Gon莽alves de Santana</name>
<email>otaviopolianasantana@gmail.com</email>
<organization>Individual / SouJava</organization>
<timezone>-5</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
<role>Spec Lead</role>
</roles>
</developer>
<developer>
<id>desruisseaux</id>
<name>Martin Desruisseaux</name>
<email>martin.desruisseaux@geomatys.com</email>
<organization>Geomatys</organization>
<organizationUrl>http://www.geomatys.com</organizationUrl>
<timezone>+1</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
<role>Architect</role>
</roles>
</developer>
<developer>
<id>thodorisbais</id>
<name>Thodoris Bais</name>
<email>thodoris.bais@gmail.com</email>
<organization>Individual / Utrecht JUG</organization>
<timezone>+1</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<id>Daniel-Dos</id>
<name>Daniel Dias</name>
<email>daniel.dias.analistati@gmail.com</email>
<organization>Individual / SouJava</organization>
<timezone>-5</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<id>jhg023</id>
<name>Jacob Glickman</name>
<organization>Individual</organization>
<timezone>-4</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<id>magesh678</id>
<name>Magesh Kasthuri</name>
<organization>Individual</organization>
<timezone>+4</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
</roles>
</developer>
<developer>
<id>mohalmo</id>
<name>Mohammed Al-Moayed</name>
<organization>Individual</organization>
<timezone>+2</timezone>
<roles>
<role>Expert</role>
<role>Java Developer</role>
</roles>
</developer>
</developers>
<contributors>
<contributor>
<name>Andi Huber</name>
<organization>Individual</organization>
<timezone>+1</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Filip Van Laenen</name>
<email>fvl@computas.com</email>
<organization>Computas</organization>
<timezone>+1</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Mads Opheim</name>
<organization>Computas</organization>
<timezone>+1</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Matthijs Thoolen</name>
<organization>Utrecht Java User Group</organization>
<timezone>+1</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Anakar Parida</name>
<organization>Individual</organization>
<timezone>+5.5</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Rustam Mehmandarov</name>
<organization>Individual</organization>
<timezone>+3</timezone>
<roles>
<role>Contributor</role>
</roles>
</contributor>
<contributor>
<name>Nathan Scott</name>
<email>nathans@redhat.com</email>
<organization>Red Hat</organization>
<timezone>+10</timezone>
<roles>
<role>Contributor Emeritus</role>
</roles>
</contributor>
<contributor>
<!-- id>duckasteroid</id -->
<name>Chris Senior</name>
<email>christopher.senior@gmail.com</email>
<organization>Snap-on Inc.</organization>
<roles>
<role>Expert Emeritus</role>
</roles>
</contributor>
<contributor>
<!-- id>leomrlima</id -->
<name>Leonardo de Moura Rocha Lima</name>
<email>llima@v2com.mobi</email>
<organization>V2COM</organization>
<organizationUrl>http://www.v2com.mobi/</organizationUrl>
<timezone>-5</timezone>
<roles>
<role>Expert Emeritus</role>
<role>Java Developer</role>
</roles>
</contributor>
<contributor>
<!-- id>eralmas7</id -->
<name>Almas Shaikh</name>
<email>eralmas7@yahoo.com</email>
<organization>Individual / JP Morgan</organization>
<timezone>+5.5</timezone>
<roles>
<role>Test Engineer</role>
</roles>
</contributor>
<contributor>
<!-- id>rajmahendra</id -->
<name>Rajmahendra Hegde</name>
<email>rajmahendra@gmail.com</email>
<organization>JUG Chennai</organization>
<timezone>+5.5</timezone>
<roles>
<role>Java Developer</role>
</roles>
</contributor>
<contributor>
<!-- id>karen_legrand</id -->
<name>Karen Legrand</name>
<email>karen.legrand@iem.com</email>
<organization>Innovation Emergency Management (IEM)</organization>
<organizationUrl>http://www.iem.com</organizationUrl>
<timezone>-5</timezone>
<roles>
<role>Java Developer</role>
</roles>
</contributor>
<contributor>
<!-- id>mohamed-taman</id -->
<name>Mohamed Mahmoud Taman</name>
<email>mohamed.taman@gmail.com</email>
<organization>Individual / Morocco JUG</organization>
<timezone>+2</timezone>
<roles>
<role>Java Developer</role>
</roles>
</contributor>
<contributor>
<name>Daniel Leuck</name>
<email>dan@ikayzo.com</email>
<organization>Ikayzo</organization>
<timezone>-9</timezone>
<roles>
<role>Supporter</role>
</roles>
</contributor>
<contributor>
<name>Eric Russell</name>
<email>eric-r@northwestern.edu</email>
<timezone>-5</timezone>
<roles>
<role>Supporter</role>
</roles>
</contributor>
<contributor>
<name>John Paul Morrison</name>
<organization>J.P. Morrison Enterprises, Ltd.</organization>
<timezone>-5</timezone>
<roles>
<role>Supporter</role>
</roles>
</contributor>
<contributor>
<name>Michael Gruebsch</name>
<email>michael@mkm-rabis.de</email>
<roles>
<role>Supporter</role>
</roles>
<timezone>+1</timezone>
</contributor>
</contributors>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compile.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
</plugin>
<!-- License -->
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>3.0</version>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Format -->
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>formatter-maven-plugin</artifactId>
<version>0.5.2</version>
</plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.jacoco</groupId>
<artifactId>
jacoco-maven-plugin
</artifactId>
<versionRange>
[0.7.1.201405082137,)
</versionRange>
<goals>
<goal>prepare-agent</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
net.revelc.code
</groupId>
<artifactId>
formatter-maven-plugin
</artifactId>
<versionRange>
[0.5.2,)
</versionRange>
<goals>
<goal>format</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Compilation -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<release>${maven.compile.targetLevel}</release>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<mkdir
dir="${project.build.directory}/classes/META-INF/versions/${jdkOptionalVersion}" />
<javac
destdir="${project.build.directory}/classes/META-INF/versions/${jdkOptionalVersion}"
srcdir="${project.basedir}/src/main/jdk${jdkOptionalVersion}"
includeAntRuntime="false">
<!-- TODO: use release attribute instead after next plugin release.
https://issues.apache.org/jira/browse/MANTRUN-214 -->
<compilerarg
line="--release=${jdkOptionalVersion} --patch-module java.measure=${project.build.directory}/classes" />
</javac>
</target>
</configuration>
</execution>
</executions>
</plugin>
<!-- Need to specificy at least 2.22.0 for JUnit 5 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.surefire.version}</version>
</plugin>
<!-- Coverage -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.plugin.version}</version>
<configuration>
<excludes>
<exclude>META-INF/versions/**</exclude>
</excludes>
</configuration>
<executions>
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>post-unit-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
<goal>check</goal>
</goals>
<configuration>
<rules>
<rule>
<element>BUNDLE</element>
<limits>
<limit implementation="org.jacoco.report.check.Limit">
<counter>INSTRUCTION</counter>
<value>COVEREDRATIO</value>
<minimum>0.5</minimum>
</limit>
<limit>
<counter>COMPLEXITY</counter>
<value>COVEREDRATIO</value>
<minimum>0.5</minimum>
</limit>
</limits>
</rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eluder.coveralls</groupId>
<artifactId>coveralls-maven-plugin</artifactId>
<version>4.3.0</version>
<dependencies>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.3</version>
</dependency>
</dependencies>
<configuration>
<repoToken>${env.COVERALLS_REPO_TOKEN}</repoToken>
</configuration>
</plugin>
<!-- Attach Sources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven.javadoc.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<detectLinks>true</detectLinks>
<keywords>true</keywords>
<linksource>true</linksource>
<failOnError>false</failOnError>
<source>${maven.compile.sourceLevel}</source>
<verbose>true</verbose>
<tags>
<tag>
<name>apiNote</name>
<placement>a</placement>
<head>API Note:</head>
</tag>
<tag>
<name>implSpec</name>
<placement>a</placement>
<head>Implementation Requirements:</head>
</tag>
</tags>
</configuration>
</plugin>
<!-- JAR packaging -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Specification-Title>${project.name}</Specification-Title>
<Specification-Version>${project.version}</Specification-Version>
<Specification-Vendor>${project.organization.name}</Specification-Vendor>
<Implementation-Vendor>Unit-API contributors</Implementation-Vendor>
<Implementation-URL>http://unitsofmeasurement.github.io</Implementation-URL>
<Automatic-Module-Name>java.measure</Automatic-Module-Name>
<Multi-Release>true</Multi-Release>
</manifestEntries>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
</configuration>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Packaging (OSGi bundle) -->
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${felix.version}</version>
<extensions>true</extensions>
</plugin>
<!-- Resources -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven.resources.version}</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<!-- ======================================================= -->
<!-- Maven License Plugin -->
<!-- ======================================================= -->
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<configuration>
<header>src/main/config/header.txt</header>
<properties>
<owner>${project.organization.name}</owner>
<currentYear>${thisYear}</currentYear>
</properties>
<excludes>
<exclude>.editorconfig</exclude>
<exclude>.gitattributes</exclude>
<exclude>.circleci/**</exclude>
<exclude>**/LICENSE</exclude>
<exclude>**/README</exclude>
<exclude>**/pom.xml</exclude>
<exclude>**/settings.xml</exclude>
<exclude>src/test/resources/**</exclude>
<exclude>src/main/resources/**</exclude>
<exclude>src/main/config/**</exclude>
<exclude>src/main/emf/**</exclude>
<exclude>src/site/**</exclude>
<exclude>src/etc/**</exclude>
<exclude>*.css</exclude>
<exclude>*.jpg</exclude>
<exclude>*.png</exclude>
<exclude>*.yml</exclude>
</excludes>
<headerDefinitions>
<headerDefinition>src/main/config/headers.xml</headerDefinition>
</headerDefinitions>
<mapping>
<java>JAVA_STYLE</java>
</mapping>
</configuration>
</plugin>
<!-- ======================================================= -->
<!-- Maven Code Formatter -->
<!-- ======================================================= -->
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>formatter-maven-plugin</artifactId>
<configuration>
<configFile>${project.basedir}/src/main/config/eclipse-formatter-config.xml</configFile>
</configuration>
<executions>
<execution>
<goals>
<goal>format</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Maven web site -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${maven.site.version}</version>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.0.0</version>
<reportSets>
<reportSet>
<reports>
<report>index</report>
<report>summary</report>
<report>licenses</report>
<report>scm</report>
<report>ci-management</report>
<report>team</report>
<report>mailing-lists</report>
<report>issue-management</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<!-- Javadoc generation -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven.javadoc.version}</version>
<configuration>
<source>${maven.compile.sourceLevel}</source>
<encoding>${project.build.sourceEncoding}</encoding>
<docencoding>${project.reporting.outputEncoding}</docencoding>
<charset>${project.reporting.outputEncoding}</charset>
<locale>en</locale>
<noqualifier>all</noqualifier>
<quiet>true</quiet>
<keywords>true</keywords>
<links>
<link>http://docs.oracle.com/javase/8/docs/api/</link>
</links>
</configuration>
</plugin>
<!-- Code analysis -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.8</version>
<configuration>
<sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
</configuration>
</plugin>
<!-- Report on test results -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>${maven.surefire-report.version}</version>
</plugin>
<!-- Static analysis for occurrences of bug patterns -->
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>3.1.12</version>
</plugin>
<!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version> <configuration> <configLocation>src/main/config/checkstyle.xml</configLocation>
</configuration> </plugin> -->
</plugins>
</reporting>
<!-- Deployment to public servers -->
<distributionManagement>
<repository>
<id>bintray-release</id>
<name>oss-jfrog-artifactory-release</name>
<url>https://oss.jfrog.org/artifactory/oss-release-local</url>
</repository>
<snapshotRepository>
<id>bintray-snapshot</id>
<name>oss-jfrog-artifactory-snapshot</name>
<url>https://oss.jfrog.org/artifactory/oss-snapshot-local</url>
</snapshotRepository>
<site>
<id>JSR-385</id>
<name>JSR-385 Maven reports</name>
<url>file:///var/www/www.unitsofmeasurement.github.io/jsr-385</url>
<!-- No longer active, just a placeholder! -->
</site>
</distributionManagement>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<!-- Individual JARs -->
<profile>
<id>base-jar</id>
<!-- This profile builds only the base (root level) elements into a separate
-base.jar file -->
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<mkdir
dir="${project.build.directory}/classes/META-INF/versions/${jdkOptionalVersion}" />
<javac
destdir="${project.build.directory}/classes/META-INF/versions/${jdkOptionalVersion}"
srcdir="${project.basedir}/src/etc/modules/core/jdk${jdkOptionalVersion}"
includeAntRuntime="false">
<!-- TODO: use release attribute instead after next plugin release.
https://issues.apache.org/jira/browse/MANTRUN-214 -->
<compilerarg
line="--release=${jdkOptionalVersion} --patch-module java.measure.base=${project.build.directory}/classes" />
</javac>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Specification-Title>${project.name}</Specification-Title>
<Specification-Version>${project.version}</Specification-Version>
<Specification-Vendor>${project.organization.name}</Specification-Vendor>
<Implementation-Vendor>Unit-API contributors</Implementation-Vendor>
<Implementation-URL>http://unitsofmeasurement.github.io</Implementation-URL>
<Automatic-Module-Name>java.measure.base</Automatic-Module-Name>
<Multi-Release>true</Multi-Release>
</manifestEntries>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
</configuration>
<executions>
<execution>
<id>base-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>base</classifier>
<excludes>
<exclude>javax/measure/format/**</exclude>
<exclude>javax/measure/quantity/**</exclude>
<exclude>javax/measure/spi/**</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>format-jar</id>
<!-- This profile builds (optional) format elements into separate JAR
files -->
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<executions>
<execution>
<id>format-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>format</classifier>
<includes>
<include>javax/measure/format/**</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>quantity-jar</id>
<!-- This profile builds (optional) quantities into separate JAR files -->
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<executions>
<execution>
<id>quanity-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>quantity</classifier>
<includes>
<include>javax/measure/quantity/**</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>spi-jar</id>
<!-- This profile builds (optional) SPI into separate JAR files -->
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<executions>
<execution>
<id>spi-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>spi</classifier>
<includes>
<include>javax/measure/spi/**</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- Profile JARs -->
<profile>
<id>format-profile</id>
<!-- This profile builds the Format Profile (base+format) into a separate
jar file -->
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<executions>
<execution>
<id>format-profile-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>format-profile</classifier>
<excludes>
<exclude>javax/measure/quantity/**</exclude>
<exclude>javax/measure/spi/**</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>spi-profile</id>
<!-- This profile builds the SPI Profile (base+format+spi) into a separate
jar file -->
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven.jar.version}</version>
<executions>
<execution>
<id>base-jar</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>spi-profile</classifier>
<excludes>
<exclude>javax/measure/quantity/**</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>documentation</id>
<build>
<plugins>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<executions>
<execution>
<id>output-html</id>
<phase>generate-resources</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<outputDirectory>target/docs</outputDirectory>
<sourceHighlighter>highlightjs</sourceHighlighter> <!-- coderay -->
<backend>html</backend>
<embedAssets>true</embedAssets>
<imagesDir>arc/main/asciidoc/images</imagesDir>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>brokenGitHubSite</id>
<build>
<plugins>
<!-- ======================================================= -->
<!-- GitHub Plugin -->
<!-- ======================================================= -->
<!-- This plugin seems permanently broken, will remove it to profile -->
<plugin>
<groupId>com.github.github</groupId>
<artifactId>site-maven-plugin</artifactId>
<version>${github.maven.version}</version>
<configuration>
<!-- must match the server's id -->
<server>github</server>
<message>Building site for ${project.version}</message>
</configuration>
<executions>
<execution>
<goals>
<goal>site</goal>
</goals>
<phase>site-deploy</phase>
<configuration>
<path>site</path>
<merge>true</merge>
<!-- <outputDirectory>${project.build.directory}/mvn-repo</outputDirectory> -->
<repositoryName>unit-api</repositoryName>
<repositoryOwner>unitsofmeasurement</repositoryOwner>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
<sonar.projectKey>${env.SONARCLOUD_PROJECT_KEY}</sonar.projectKey>
<sonar.login>${env.SONARCLOUD_LOGIN}</sonar.login>
<sonar.organization>${env.SONARCLOUD_ORG}</sonar.organization>
</properties>
</profile>
</profiles>
</project>
|