From eeb3ac4c44e518544306e2cdadf97fe409df9d73 Mon Sep 17 00:00:00 2001 From: "David M. Lloyd" Date: Fri, 5 Oct 2018 08:22:45 -0500 Subject: [PATCH 1/2] Migrate README to AsciiDoc --- README.adoc | 133 ++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 103 ---------------------------------------- 2 files changed, 133 insertions(+), 103 deletions(-) create mode 100644 README.adoc delete mode 100644 README.md diff --git a/README.adoc b/README.adoc new file mode 100644 index 0000000..7292366 --- /dev/null +++ b/README.adoc @@ -0,0 +1,133 @@ +[id='jboss-parent-pom'] += JBoss Parent POM + +The parent Maven POM for JBoss community projects. + +https://maven-badges.herokuapp.com/maven-central/org.jboss/jboss-parent[image:https://maven-badges.herokuapp.com/maven-central/org.jboss/jboss-parent/badge.svg[Maven +Central]] + +[id='what-is-it'] +== What is it? + +The JBoss parent POM provides default configuration for Maven builds. + +* Recommended/Default versions for the most commonly used Maven plugins +* Manifest configuration for the jar and assembly plugins +* Profiles for generating source jars, and enforcing a minimum versions +of Java and Maven +* Distribution Management and other configuration for deploying to the +JBoss.org Maven repositories + +[id='how-to-use-it'] +== How to use it? + +Start out by adding the parent configuration to your pom. + +[source,xml] +---- + + org.jboss + jboss-parent + 21 + +---- + +The pom includes properties which allow various build configuration to +be customized. For example, to override the default version of the +maven-compiler-plugin, just set a property. + +[source,xml] +---- + + 3.1 + +---- + +Or override the default Java compiler source and target level used in +the build. Note the default level is 1.8. + +[source,xml] +---- + + 1.7 + 1.7 + +---- + +The minimum version of Java or Maven required to run a build can also be +set via properties. + +[source,xml] +---- + + 3.0.3 + 1.7 + +---- + +If jdk.min.version is not set, it default to version defined by +maven.compiler.source + +For the full list of properties, refer to the POM itself. + +[id='the-jboss-release-profile'] +== The JBoss Release Profile + +The parent POM includes a Maven profile called "jboss-release". This +profile contains settings for generating a full project source archive, +javadoc jar files, and release deployment metadata. If using the Maven +release plugin, this profile will automatically be activate during the +release:perform step. + +If the Maven release plugin is not used during the release process, the +profile can be manually activated from the command line during a release +build. + +[source,bash] +---- +mvn -Pjboss-release deploy +---- + +[id='the-gpg-sign-profile'] +== The GPG Sign Profile + +This POM includes a Maven profile called "gpg-sign" which provides +default configuration to generate GPG signatures for the build +artifacts. + +[source,bash] +---- +mvn -Pgpg-sign deploy +---- + +In order for the gpg plugin to properly create a signature for each +artifact, the properties "gpg.keyname" and "gpg.passphrase" must be +available to the current build. These properties can either be set in a +build profile, or on the command line. + +[source,xml] +---- + + gpg-config + + me@home.com + + secret + + +---- + +[id='where-to-get-more-information'] +== Where to get more information? + +The https://github.com/jboss/jboss-parent-pom/wiki[github wiki] provides +some additional examples. For questions/suggestions about the +jboss-parent-pom, head to the http://community.jboss.org/en/build[JBoss +Community Build space] on the jboss.org site. Issues related to the +jboss-parent-pom can be submitted to the +https://issues.jboss.org/browse/JBBUILD[JBoss build jira project] + +[id='license'] +== License + +* This software is in the public domain diff --git a/README.md b/README.md deleted file mode 100644 index 528ce40..0000000 --- a/README.md +++ /dev/null @@ -1,103 +0,0 @@ -JBoss Parent POM -================= -The parent Maven POM for JBoss community projects. - -[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.jboss/jboss-parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.jboss/jboss-parent) - -What is it? ------------ -The JBoss parent POM provides default configuration for Maven builds. - -* Recommended/Default versions for the most commonly used Maven plugins -* Manifest configuration for the jar and assembly plugins -* Profiles for generating source jars, and enforcing a minimum versions of - Java and Maven -* Distribution Management and other configuration for deploying to the - JBoss.org Maven repositories - -How to use it? --------------- -Start out by adding the parent configuration to your pom. - - - org.jboss - jboss-parent - 21 - - -The pom includes properties which allow various build configuration to be -customized. For example, to override the default version of the -maven-compiler-plugin, just set a property. - - - 3.1 - - -Or override the default Java compiler source and target level used in the build. -Note the default level is 1.8. - - - 1.7 - 1.7 - - -The minimum version of Java or Maven required to run a build can also be set via -properties. - - - 3.0.3 - 1.7 - - -If jdk.min.version is not set, it default to version defined by maven.compiler.source - -For the full list of properties, refer to the POM itself. - - -The JBoss Release Profile --------------------- -The parent POM includes a Maven profile called "jboss-release". This profile contains -settings for generating a full project source archive, javadoc jar files, and -release deployment metadata. If using the Maven release plugin, this profile -will automatically be activate during the release:perform step. - -If the Maven release plugin is not used during the release process, the profile -can be manually activated from the command line during a release build. - - mvn -Pjboss-release deploy - - -The GPG Sign Profile --------------------- -This POM includes a Maven profile called "gpg-sign" which provides default -configuration to generate GPG signatures for the build artifacts. - - mvn -Pgpg-sign deploy - -In order for the gpg plugin to properly create a signature for each artifact, -the properties "gpg.keyname" and "gpg.passphrase" must be available to -the current build. These properties can either be set in a -build profile, or on the command line. - - - gpg-config - - me@home.com - - secret - - - - -Where to get more information? ---------------------------------- -The [github wiki](https://github.com/jboss/jboss-parent-pom/wiki) provides some -additional examples. For questions/suggestions about the jboss-parent-pom, -head to the [JBoss Community Build space](http://community.jboss.org/en/build) -on the jboss.org site. Issues related to the jboss-parent-pom can be submitted -to the [JBoss build jira project](https://issues.jboss.org/browse/JBBUILD) - -License -------- -* This software is in the public domain - From 8a7bc0b854d9137fc417af6e166095b81e583bb0 Mon Sep 17 00:00:00 2001 From: "David M. Lloyd" Date: Thu, 22 Feb 2018 11:55:05 -0600 Subject: [PATCH 2/2] [WFLY-10178] Support for MR-JAR builds --- README.adoc | 122 +++++++ base/pom.xml | 859 +++++++++++++++++++++++++++++++++++++++++++++ mr-jar/pom.xml | 447 ++++++++++++++++++++++++ pom.xml | 927 ++++--------------------------------------------- 4 files changed, 1505 insertions(+), 850 deletions(-) create mode 100755 base/pom.xml create mode 100755 mr-jar/pom.xml mode change 100755 => 100644 pom.xml diff --git a/README.adoc b/README.adoc index 7292366..c15d526 100644 --- a/README.adoc +++ b/README.adoc @@ -117,6 +117,128 @@ build profile, or on the command line. ---- +[id='mr-jars'] +== Multi-Release JARs +Starting with version 30, the JBoss Parent POM provides a framework for multi-release JAR build and test. + +[id='mr-jar-overview'] +=== Functional overview + +The multi-release JAR support works in two parts: compilation and testing. + +[id='mr-jar-compilation'] +==== Compilation + +Compilation works by providing extra executions of the compiler plugin in order to build the additional JAR layers. The +base layer is built by the standard `default-compile` execution. After that, Maven profiles are activated based on the +presence of extra layer source directories (e.g. `src/main/java9`, `src/main/java10` etc.). These profiles contain +additional executions of the compiler plugin which compile the sources in the layer directory, while putting the output +of the previous step on the class path. + +Each present layer is in turn compiled with the results of all the previous layers on the classpath in the correct order. +The additional layer class files are output under the `target/classes` directory in the appropriate location for +multi-release JAR layers. + +In order to select the correct class files for the given Java version, the `` property is used. +This prevents accidental usage of APIs which are only present in later versions than the one +being compiled. However there is a limitation to this strategy: Java 9 and later do not provide runtime information +for non-standard Java 8 classes such as `sun.misc.Unsafe`. If your project needs to compile against these classes, +you must use the dependency plugin as described <>. + +[id='mr-jar-testing'] +==== Testing + +Testing using `maven-surefire-plugin` is supported by running the project unit tests on +every supported Java version. In order to do so, it is expected that the following system +property or properties are set as needed: + +* `java8.home`: this property must be set to the location of a Java 8 JDK installation +* `java9.home`: this property must be set to the location of a Java 9 JDK installation +* `java10.home`: this property must be set to the location of a Java 10 JDK installation +* `java11.home`: this property must be set to the location of a Java 11 JDK installation + +In order to simplify development, it is recommended to project maintainers to set these +properties in your personal Maven `settings.xml` file. + +Extra unit tests are run for a given platform whenever a newer version than that platform +was used to build the project. + +=== Configuration + +To configure a multi-release JAR, you need the following pieces of information: + +* The minimum (oldest) version of Java that will be supported by the project +* The maximum (newest) version of Java for which your project has sources + +[id='mr-jar-base-layer'] +==== Step 1: Base layer version + +Choose your base layer version. This can be Java 8 or anything later. Configure the version by configuring the +`release` property in the `default-compile` execution of `maven-compiler-plugin`: + +[source,xml] +---- + + maven-compiler-plugin + + + default-compile + + 8 + + + + +---- + +Note that a single-layer Java 8 build does not support the `release` element because the +corresponding `javac` option is only present in JDK 9 and later. Single-layer Java 8 builds +should not use this multi-release JAR framework. + +[id='mr-jar-highest-layer'] +==== Step 2: Highest layer version + +Configure the `jdk.min.version` property as described above to match either: + +* The maximum (newest) Java version for which _sources exist_ in your project, or +* Some Java version higher than that + +This is the version of Java that will build all of your layers, so it necessarily must be +able to compile every version of Java sources from oldest to newest. + +[id='mr-jar-source-dirs'] +==== Step 3: Source directories + +The sources for your base layer continue to reside in `src/main/java` and `src/test/java`. + +Additional layers are in directories whose names correspond to the version of Java that +is targeted by that directory. For example, sources which are specific to Java 9 and later +would be in `src/main/java9`, whereas sources which are specific to Java 11 and later would +be in `src/main/java11`. + +If you have a class that needs an alternative version for a given Java version, you only +need to provide the replacement source file in the directory corresponding to the _oldest_ +version that supports the alternative source. It is not necessary to copy identical classes into +more than one layer; doing so will increase the size of the resultant artifact needlessly. + +There are restrictions on these directories. You may only provide sources that correspond +to sources that exist in the base layer - that is, it is a violation of the MR JAR specification to provide +sources that introduce new APIs only in later Java versions. The JDK does enforce this at run time. +In addition, providing additional public members in later versions is generally not recommended. + +[id='mr-jar-sun-misc'] +=== Missing JDK APIs + +If your project relies on APIs which are not in the Java SE specification (for example, +classes such as `sun.misc` which are present in the `jdk.unsupported` module in Java 9 and +later), and your base layer targets Java 8, you must take an additional step. + +Since these APIs are not included in the class database that `javac` uses to compile (even +though they are present at run time), stubs of the extra classes must be included but only during +compilation. + +Set the `java8.jdk-misc` property in your POM in order to automatically perform this step. + [id='where-to-get-more-information'] == Where to get more information? diff --git a/base/pom.xml b/base/pom.xml new file mode 100755 index 0000000..df16a33 --- /dev/null +++ b/base/pom.xml @@ -0,0 +1,859 @@ + + + + + 4.0.0 + + org.jboss + 30-SNAPSHOT + jboss-parent + + pom + + JBoss Parent POM + Parent POM for JBoss projects. Provides default project build configuration. + http://www.jboss.org + + + JIRA + https://issues.jboss.org/ + + + + scm:git:git@github.com:jboss/jboss-parent-pom.git + scm:git:git@github.com:jboss/jboss-parent-pom.git + http://github.com/jboss/jboss-parent-pom + HEAD + + + + + jboss.org + JBoss.org Community + JBoss.org + http://www.jboss.org + + + + + + JBoss User List + https://lists.jboss.org/mailman/listinfo/jboss-user + https://lists.jboss.org/mailman/listinfo/jboss-user + http://lists.jboss.org/pipermail/jboss-user/ + + + JBoss Developer List + https://lists.jboss.org/mailman/listinfo/jboss-development + https://lists.jboss.org/mailman/listinfo/jboss-development + http://lists.jboss.org/pipermail/jboss-development/ + + + + + + Public Domain + http://repository.jboss.org/licenses/cc0-1.0.txt + repo + + + + + JBoss by Red Hat + http://www.jboss.org + + + + + + + 1.8 + 3.0.1 + 3.1.0 + 3.0.0 + 1.4 + 3.5.0 + 3.0.0 + 3.1.0 + 4.1.2 + 2.7 + 3.7.0-jboss-1 + 3.1.1 + 2.8.2 + 1.4.1 + 3.0.1 + 1.0.0 + 3.0.1 + 1.6.0 + 3.0.0-M2 + 3.0.5 + 1.6 + 3.1.0 + 1.0.2 + 2.5.2 + 3.1.0 + 3.0.1 + 2.1 + 2.5 + 1.16 + 2.9 + 3.5.2 + 3.10.0 + 2.4 + 2.5.3 + 3.1.0 + 3.1.1 + 3.7.1 + 3.4.0.905 + 3.0.1 + 2.22.0 + ${version.surefire.plugin} + 3.2.2 + 4.4.3 + + + 3.6.0 + + + + + + jboss-releases-repository + https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/ + jboss-snapshots-repository + https://repository.jboss.org/nexus/content/repositories/snapshots/ + + + + + + + UTF-8 + UTF-8 + + + 1.8 + 1.8 + ${maven.compiler.target} + ${maven.compiler.source} + + + ${maven.compiler.target} + ${maven.compiler.source} + ${maven.compiler.testTarget} + ${maven.compiler.testSource} + + + 3.2.5 + ${maven.compiler.argument.source} + + + true + + + ${maven.compiler.argument.target} + + + false + -Pjboss-release + + + source-release + 8.10.1 + + + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + ${version.antrun.plugin} + + + org.apache.maven.plugins + maven-archetype-plugin + ${version.archetype.plugin} + + + org.apache.maven.plugins + maven-assembly-plugin + ${version.assembly.plugin} + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${version.buildhelper.plugin} + + + org.codehaus.mojo + buildnumber-maven-plugin + ${version.buildnumber.plugin} + + + com.googlecode.maven-download-plugin + download-maven-plugin + ${version.download.plugin} + + + org.apache.felix + maven-bundle-plugin + ${version.bundle.plugin} + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + + + + ${buildNumber} + + + + + org.apache.maven.plugins + maven-checkstyle-plugin + ${version.checkstyle.plugin} + + + com.puppycrawl.tools + checkstyle + ${version.checkstyle} + + + com.sun + tools + + + + + + + org.apache.maven.plugins + maven-clean-plugin + ${version.clean.plugin} + + + com.atlassian.maven.plugins + clover-maven-plugin + ${version.clover.plugin} + + + org.codehaus.mojo + cobertura-maven-plugin + ${version.cobertura.plugin} + + + org.apache.maven.plugins + maven-compiler-plugin + ${version.compiler.plugin} + + true + true + ${maven.compiler.argument.source} + ${maven.compiler.argument.target} + ${maven.compiler.argument.testSource} + ${maven.compiler.argument.testTarget} + + -Xlint:unchecked + + + + + org.apache.maven.plugins + maven-dependency-plugin + ${version.dependency.plugin} + + + org.apache.maven.plugins + maven-deploy-plugin + ${version.deploy.plugin} + + + org.apache.maven.plugins + maven-ear-plugin + ${version.ear.plugin} + + + org.codehaus.plexus + plexus-archiver + ${version.plexus.archiver} + + + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + + + + org.apache.maven.plugins + maven-ejb-plugin + ${version.ejb.plugin} + + + org.apache.maven.plugins + maven-enforcer-plugin + ${version.enforcer.plugin} + + + org.codehaus.mojo + exec-maven-plugin + ${version.exec.plugin} + + + org.apache.maven.plugins + maven-failsafe-plugin + ${version.failsafe.plugin} + + + org.codehaus.mojo + findbugs-maven-plugin + ${version.findbugs.plugin} + + + org.apache.maven.plugins + maven-gpg-plugin + ${version.gpg.plugin} + + + org.apache.maven.plugins + maven-help-plugin + ${version.help.plugin} + + + org.jboss.maven.plugins + maven-injection-plugin + ${version.injection.plugin} + + + compile + + bytecode + + + + + + org.apache.maven.plugins + maven-install-plugin + ${version.install.plugin} + + + org.apache.maven.plugins + maven-jar-plugin + ${version.jar.plugin} + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${version.javadoc.plugin} + +
${project.name} ${project.version}]]>
+
${project.name} ${project.version}]]>
+ + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + + ${javadoc.additional.params} + ${javadoc.additional.params} +
+
+ + org.codehaus.mojo + javancss-maven-plugin + ${version.javancss.plugin} + + + org.apache.maven.plugins + maven-jxr-plugin + ${version.jxr.plugin} + + + org.codehaus.mojo + license-maven-plugin + ${version.license.plugin} + + + org.apache.maven.plugins + maven-plugin-plugin + ${version.plugin.plugin} + + + org.apache.maven.plugins + maven-pmd-plugin + ${version.pmd.plugin} + + + org.apache.maven.plugins + maven-rar-plugin + ${version.rar.plugin} + + + org.apache.maven.plugins + maven-release-plugin + ${version.release.plugin} + + + org.apache.maven.plugins + maven-resources-plugin + ${version.resources.plugin} + + + org.apache.maven.plugins + maven-shade-plugin + ${version.shade.plugin} + + + org.apache.maven.plugins + maven-site-plugin + ${version.site.plugin} + + + org.codehaus.mojo + sonar-maven-plugin + ${version.sonar.plugin} + + + org.apache.maven.plugins + maven-source-plugin + ${version.source.plugin} + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${version.surefire.plugin} + + false + + ${project.build.directory} + + + + + org.apache.maven.plugins + maven-war-plugin + ${version.war.plugin} + + + true + + + true + + + true + + + + ${project.url} + ${java.version} + ${java.vendor} + ${os.name} + ${os.arch} + ${os.version} + ${project.scm.url} + ${project.scm.connection} + ${buildNumber} + + + false + + + + org.zanata + zanata-maven-plugin + ${version.zanata.plugin} + + + + + org.eclipse.m2e + lifecycle-mapping + ${version.org.eclipse.m2e.lifecycle-mapping} + + + + + + + org.apache.felix + maven-bundle-plugin + [2.3.7,) + + manifest + + + + + + + + + + org.apache.maven.plugins + maven-enforcer-plugin + [1.3.1,) + + enforce + + + + + + + + + + org.codehaus.mojo + buildnumber-maven-plugin + [1.0.0,) + + create + + + + + + + + + + + +
+ +
+ + + + + + org.apache.maven.plugins + maven-enforcer-plugin + + + enforce-java-version + + enforce + + + + + To build this project JDK ${jdk.min.version} (or greater) is required. Please install it. + ${jdk.min.version} + + + + + + enforce-maven-version + + enforce + + + + + To build this project Maven ${maven.min.version} (or greater) is required. Please install it. + ${maven.min.version} + + + + + + + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + get-scm-revision + initialize + + create + + + false + false + UNKNOWN + true + + + + + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar-no-fork + + + + + + + +
+ + + + + + jboss-release + + + + + org.apache.maven.plugins + maven-assembly-plugin + ${version.assembly.plugin} + + + org.apache.apache.resources + apache-source-release-assembly-descriptor + 1.0.6 + + + + + source-release-assembly + package + + single + + + true + + ${sourceReleaseAssemblyDescriptor} + + gnu + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + org.apache.maven.plugins + maven-javadoc-plugin + + + attach-javadocs + + jar + + + + + + + + + doclint-java8-disable + + [1.8,) + + + -Xdoclint:none + + + + + gpg-sign + + + + + org.apache.maven.plugins + maven-gpg-plugin + + true + + + + + sign + + + + + + + + + + + + + ${jboss.releases.repo.id} + JBoss Releases Repository + ${jboss.releases.repo.url} + + + ${jboss.snapshots.repo.id} + JBoss Snapshots Repository + ${jboss.snapshots.repo.url} + + + +
diff --git a/mr-jar/pom.xml b/mr-jar/pom.xml new file mode 100755 index 0000000..194ab38 --- /dev/null +++ b/mr-jar/pom.xml @@ -0,0 +1,447 @@ + + + + + 4.0.0 + + jboss-parent-mr-jar + + pom + + JBoss MR-JAR Parent POM + Parent POM for multi-release JBoss projects. + http://www.jboss.org + + + org.jboss + jboss-parent + 30-SNAPSHOT + ../base + + + + + 2.Final + + + + + + include-jdk-misc + + + java8.jdk-misc + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + fetch-jdk-misc + generate-sources + + get + copy + + + org.jboss:jdk-misc:${version.jdk-misc} + ${project.build.directory} + true + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + default-compile + compile + + compile + + + 8 + + ${project.build.directory}/jdk-misc.jar + + + + + + + + + + + + + java8-test + + [9, + + java8.home + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + java8-test + test + + test + + + ${java8.home}/bin/java + + + + + + + + + + + java9-mr-build + + [9, + + ${basedir}/src/main/java9 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + compile-java9 + compile + + compile + + + 9 + ${project.build.directory} + ${project.basedir}/src/main/java9 + ${project.build.directory}/classes/META-INF/versions/9 + + + ${project.build.outputDirectory} + + + + + + + + maven-jar-plugin + + + + true + + + + + + + + + + + java9-test + + [10, + + java9.home + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + java9-test + test + + test + + + ${java9.home}/bin/java + ${project.build.directory}/classes/META-INF/versions/9 + + + ${project.build.outputDirectory} + + + + + + + + + + + + + java10-mr-build + + [10, + + ${basedir}/src/main/java10 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + compile-java10 + compile + + compile + + + 10 + ${project.build.directory} + ${project.basedir}/src/main/java10 + ${project.build.directory}/classes/META-INF/versions/10 + + + + ${project.build.directory}/classes/META-INF/versions/9 + + ${project.build.outputDirectory} + + + + + + + + maven-jar-plugin + + + + true + + + + + + + + + + + java10-test + + [11, + + java10.home + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + java10-test + test + + test + + + ${java10.home}/bin/java + ${project.build.directory}/classes/META-INF/versions/10 + + + + ${project.build.directory}/classes/META-INF/versions/9 + + ${project.build.outputDirectory} + + + + + + + + + + + + + java11-mr-build + + [11, + + ${basedir}/src/main/java11 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + compile-java11 + compile + + compile + + + 11 + ${project.build.directory} + ${project.basedir}/src/main/java11 + ${project.build.directory}/classes/META-INF/versions/11 + + + + ${project.build.directory}/classes/META-INF/versions/10 + + + ${project.build.directory}/classes/META-INF/versions/9 + + ${project.build.outputDirectory} + + + + + + + + maven-jar-plugin + + + + true + + + + + + + + + + + java11-test + + [12, + + java11.home + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + java11-test + test + + test + + + ${java11.home}/bin/java + ${project.build.directory}/classes/META-INF/versions/11 + + + + ${project.build.directory}/classes/META-INF/versions/10 + + + ${project.build.directory}/classes/META-INF/versions/9 + + ${project.build.outputDirectory} + + + + + + + + + + + + + java12-mr-build + + [12, + + ${basedir}/src/main/java12 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + compile-java12 + compile + + compile + + + 12 + ${project.build.directory} + ${project.basedir}/src/main/java12 + ${project.build.directory}/classes/META-INF/versions/12 + + + + ${project.build.directory}/classes/META-INF/versions/11 + + + ${project.build.directory}/classes/META-INF/versions/10 + + + ${project.build.directory}/classes/META-INF/versions/9 + + ${project.build.outputDirectory} + + + + + + + + maven-jar-plugin + + + + true + + + + + + + + + + diff --git a/pom.xml b/pom.xml old mode 100755 new mode 100644 index 211b6f7..4943225 --- a/pom.xml +++ b/pom.xml @@ -1,859 +1,86 @@ - + - 4.0.0 + 4.0.0 - org.jboss - 30-SNAPSHOT - jboss-parent + org.jboss + 30-SNAPSHOT + jboss-parent-parent - pom + pom - JBoss Parent POM - Parent POM for JBoss projects. Provides default project build configuration. - http://www.jboss.org - - - JIRA - https://issues.jboss.org/ - - - - scm:git:git@github.com:jboss/jboss-parent-pom.git - scm:git:git@github.com:jboss/jboss-parent-pom.git - http://github.com/jboss/jboss-parent-pom - HEAD - - - - - jboss.org - JBoss.org Community - JBoss.org - http://www.jboss.org - - - - - - JBoss User List - https://lists.jboss.org/mailman/listinfo/jboss-user - https://lists.jboss.org/mailman/listinfo/jboss-user - http://lists.jboss.org/pipermail/jboss-user/ - - - JBoss Developer List - https://lists.jboss.org/mailman/listinfo/jboss-development - https://lists.jboss.org/mailman/listinfo/jboss-development - http://lists.jboss.org/pipermail/jboss-development/ - - - - - - Public Domain - http://repository.jboss.org/licenses/cc0-1.0.txt - repo - - - - - JBoss by Red Hat + JBoss Parent Parent POM + Provides, via submodules, a base configuration for JBoss project builds, as well as a derived configuration supporting multi-release JARs http://www.jboss.org - - - - - - - 1.8 - 3.0.1 - 3.1.0 - 3.0.0 - 1.4 - 3.5.0 - 3.0.0 - 3.1.0 - 4.1.2 - 2.7 - 3.7.0 - 3.1.1 - 2.8.2 - 1.4.1 - 3.0.1 - 1.0.0 - 3.0.1 - 1.6.0 - 3.0.0-M2 - 3.0.5 - 1.6 - 3.1.0 - 1.0.2 - 2.5.2 - 3.1.0 - 3.0.1 - 2.1 - 2.5 - 1.16 - 2.9 - 3.5.2 - 3.10.0 - 2.4 - 2.5.3 - 3.1.0 - 3.1.1 - 3.7.1 - 3.4.0.905 - 3.0.1 - 2.22.0 - ${version.surefire.plugin} - 3.2.2 - 4.4.3 - - - 3.6.0 - - - - - - jboss-releases-repository - https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/ - jboss-snapshots-repository - https://repository.jboss.org/nexus/content/repositories/snapshots/ - - - - - - - UTF-8 - UTF-8 - - - 1.8 - 1.8 - ${maven.compiler.target} - ${maven.compiler.source} - - - ${maven.compiler.target} - ${maven.compiler.source} - ${maven.compiler.testTarget} - ${maven.compiler.testSource} - - - 3.2.5 - ${maven.compiler.argument.source} - - - true - - - ${maven.compiler.argument.target} - - - false - -Pjboss-release - - - source-release - 8.10.1 - - - - - - - - - - - org.apache.maven.plugins - maven-antrun-plugin - ${version.antrun.plugin} - - - org.apache.maven.plugins - maven-archetype-plugin - ${version.archetype.plugin} - - - org.apache.maven.plugins - maven-assembly-plugin - ${version.assembly.plugin} - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - - - - org.codehaus.mojo - build-helper-maven-plugin - ${version.buildhelper.plugin} - - - org.codehaus.mojo - buildnumber-maven-plugin - ${version.buildnumber.plugin} - - - com.googlecode.maven-download-plugin - download-maven-plugin - ${version.download.plugin} - - - org.apache.felix - maven-bundle-plugin - ${version.bundle.plugin} - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - - - - ${buildNumber} - - - - - org.apache.maven.plugins - maven-checkstyle-plugin - ${version.checkstyle.plugin} - - - com.puppycrawl.tools - checkstyle - ${version.checkstyle} - - - com.sun - tools - - - - - - - org.apache.maven.plugins - maven-clean-plugin - ${version.clean.plugin} - - - com.atlassian.maven.plugins - clover-maven-plugin - ${version.clover.plugin} - - - org.codehaus.mojo - cobertura-maven-plugin - ${version.cobertura.plugin} - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - true - true - ${maven.compiler.argument.source} - ${maven.compiler.argument.target} - ${maven.compiler.argument.testSource} - ${maven.compiler.argument.testTarget} - - -Xlint:unchecked - - - - - org.apache.maven.plugins - maven-dependency-plugin - ${version.dependency.plugin} - - - org.apache.maven.plugins - maven-deploy-plugin - ${version.deploy.plugin} - - - org.apache.maven.plugins - maven-ear-plugin - ${version.ear.plugin} - - - org.codehaus.plexus - plexus-archiver - ${version.plexus.archiver} - - - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - - - - org.apache.maven.plugins - maven-ejb-plugin - ${version.ejb.plugin} - - - org.apache.maven.plugins - maven-enforcer-plugin - ${version.enforcer.plugin} - - - org.codehaus.mojo - exec-maven-plugin - ${version.exec.plugin} - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - org.codehaus.mojo - findbugs-maven-plugin - ${version.findbugs.plugin} - - - org.apache.maven.plugins - maven-gpg-plugin - ${version.gpg.plugin} - - - org.apache.maven.plugins - maven-help-plugin - ${version.help.plugin} - - - org.jboss.maven.plugins - maven-injection-plugin - ${version.injection.plugin} - - - compile - - bytecode - - - - - - org.apache.maven.plugins - maven-install-plugin - ${version.install.plugin} - - - org.apache.maven.plugins - maven-jar-plugin - ${version.jar.plugin} - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - ${version.javadoc.plugin} - -
${project.name} ${project.version}]]>
-
${project.name} ${project.version}]]>
- - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - - ${javadoc.additional.params} - ${javadoc.additional.params} -
-
- - org.codehaus.mojo - javancss-maven-plugin - ${version.javancss.plugin} - - - org.apache.maven.plugins - maven-jxr-plugin - ${version.jxr.plugin} - - - org.codehaus.mojo - license-maven-plugin - ${version.license.plugin} - - - org.apache.maven.plugins - maven-plugin-plugin - ${version.plugin.plugin} - - - org.apache.maven.plugins - maven-pmd-plugin - ${version.pmd.plugin} - - - org.apache.maven.plugins - maven-rar-plugin - ${version.rar.plugin} - - - org.apache.maven.plugins - maven-release-plugin - ${version.release.plugin} - - - org.apache.maven.plugins - maven-resources-plugin - ${version.resources.plugin} - - - org.apache.maven.plugins - maven-shade-plugin - ${version.shade.plugin} - - - org.apache.maven.plugins - maven-site-plugin - ${version.site.plugin} - - - org.codehaus.mojo - sonar-maven-plugin - ${version.sonar.plugin} - - - org.apache.maven.plugins - maven-source-plugin - ${version.source.plugin} - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - - - - org.apache.maven.plugins - maven-surefire-plugin - ${version.surefire.plugin} - - false - - ${project.build.directory} - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - true - - - true - - - true - - - - ${project.url} - ${java.version} - ${java.vendor} - ${os.name} - ${os.arch} - ${os.version} - ${project.scm.url} - ${project.scm.connection} - ${buildNumber} - - - false - - - - org.zanata - zanata-maven-plugin - ${version.zanata.plugin} - - - - - org.eclipse.m2e - lifecycle-mapping - ${version.org.eclipse.m2e.lifecycle-mapping} - - - - - - - org.apache.felix - maven-bundle-plugin - [2.3.7,) - - manifest - - - - - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - [1.3.1,) - - enforce - - - - - - - - - - org.codehaus.mojo - buildnumber-maven-plugin - [1.0.0,) - - create - - - - - - - - - - - -
- -
- - - - - - org.apache.maven.plugins - maven-enforcer-plugin - - - enforce-java-version - - enforce - - - - - To build this project JDK ${jdk.min.version} (or greater) is required. Please install it. - ${jdk.min.version} - - - - - - enforce-maven-version - - enforce - - - - - To build this project Maven ${maven.min.version} (or greater) is required. Please install it. - ${maven.min.version} - - - - - - - - - - org.codehaus.mojo - buildnumber-maven-plugin - - - get-scm-revision - initialize - - create - - - false - false - UNKNOWN - true - - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - attach-sources - - jar-no-fork - - - - - - - -
- - - - - - jboss-release - - - - - org.apache.maven.plugins - maven-assembly-plugin - ${version.assembly.plugin} - - - org.apache.apache.resources - apache-source-release-assembly-descriptor - 1.0.6 - - - - - source-release-assembly - package - - single - - - true - - ${sourceReleaseAssemblyDescriptor} - - gnu - - - - - - org.apache.maven.plugins - maven-deploy-plugin - - true - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - attach-javadocs - - jar - - - - - - - - - doclint-java8-disable - - [1.8,) - - - -Xdoclint:none - - - - - gpg-sign - - - - - org.apache.maven.plugins - maven-gpg-plugin - - true - - - - - sign - - - - - - - - - - - - - ${jboss.releases.repo.id} - JBoss Releases Repository - ${jboss.releases.repo.url} - - - ${jboss.snapshots.repo.id} - JBoss Snapshots Repository - ${jboss.snapshots.repo.url} - - + + JIRA + https://issues.jboss.org/ + + + + scm:git:git@github.com:jboss/jboss-parent-pom.git + scm:git:git@github.com:jboss/jboss-parent-pom.git + http://github.com/jboss/jboss-parent-pom + HEAD + + + + + jboss.org + JBoss.org Community + JBoss.org + http://www.jboss.org + + + + + + JBoss User List + https://lists.jboss.org/mailman/listinfo/jboss-user + https://lists.jboss.org/mailman/listinfo/jboss-user + http://lists.jboss.org/pipermail/jboss-user/ + + + JBoss Developer List + https://lists.jboss.org/mailman/listinfo/jboss-development + https://lists.jboss.org/mailman/listinfo/jboss-development + http://lists.jboss.org/pipermail/jboss-development/ + + + + + + Public Domain + http://repository.jboss.org/licenses/cc0-1.0.txt + repo + + + + + JBoss by Red Hat + http://www.jboss.org + + + + base + mr-jar +