From 129eba0fa7208023c6b8e4debd76004ac4c4e556 Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Fri, 4 Feb 2022 02:19:29 +0100 Subject: [PATCH] Optimize build The goal is that a subsequent maven build will not touch the jars at all. In order to achieve that, the manifest is build in a separate directory and moved (with filtering) into the target/classes folder. --- maven-resolver-api/pom.xml | 4 + maven-resolver-connector-basic/pom.xml | 4 - maven-resolver-impl/pom.xml | 4 - maven-resolver-named-locks-hazelcast/pom.xml | 4 - maven-resolver-named-locks-redisson/pom.xml | 4 - maven-resolver-named-locks/pom.xml | 4 - maven-resolver-transport-classpath/pom.xml | 4 - maven-resolver-transport-file/pom.xml | 4 - maven-resolver-transport-http/pom.xml | 4 - maven-resolver-transport-wagon/pom.xml | 4 - pom.xml | 132 +++++++++++++++++-- 11 files changed, 122 insertions(+), 50 deletions(-) diff --git a/maven-resolver-api/pom.xml b/maven-resolver-api/pom.xml index 73ded30cc..ecfd86f51 100644 --- a/maven-resolver-api/pom.xml +++ b/maven-resolver-api/pom.xml @@ -64,6 +64,10 @@ biz.aQute.bnd bnd-maven-plugin + + org.apache.maven.plugins + maven-resources-plugin + org.apache.maven.plugins maven-jar-plugin diff --git a/maven-resolver-connector-basic/pom.xml b/maven-resolver-connector-basic/pom.xml index b164bc88e..a7d1fac23 100644 --- a/maven-resolver-connector-basic/pom.xml +++ b/maven-resolver-connector-basic/pom.xml @@ -103,10 +103,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-impl/pom.xml b/maven-resolver-impl/pom.xml index f94ee49f5..c9d378c9a 100644 --- a/maven-resolver-impl/pom.xml +++ b/maven-resolver-impl/pom.xml @@ -136,10 +136,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-named-locks-hazelcast/pom.xml b/maven-resolver-named-locks-hazelcast/pom.xml index c0fac23f2..e5a4271ec 100644 --- a/maven-resolver-named-locks-hazelcast/pom.xml +++ b/maven-resolver-named-locks-hazelcast/pom.xml @@ -93,10 +93,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-named-locks-redisson/pom.xml b/maven-resolver-named-locks-redisson/pom.xml index 41a1f422d..49a787204 100644 --- a/maven-resolver-named-locks-redisson/pom.xml +++ b/maven-resolver-named-locks-redisson/pom.xml @@ -105,10 +105,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-named-locks/pom.xml b/maven-resolver-named-locks/pom.xml index 46ac46e44..bd5ae9910 100644 --- a/maven-resolver-named-locks/pom.xml +++ b/maven-resolver-named-locks/pom.xml @@ -79,10 +79,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-transport-classpath/pom.xml b/maven-resolver-transport-classpath/pom.xml index aaf29b947..a2cc52e46 100644 --- a/maven-resolver-transport-classpath/pom.xml +++ b/maven-resolver-transport-classpath/pom.xml @@ -94,10 +94,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-transport-file/pom.xml b/maven-resolver-transport-file/pom.xml index 68abf2530..3dd041440 100644 --- a/maven-resolver-transport-file/pom.xml +++ b/maven-resolver-transport-file/pom.xml @@ -99,10 +99,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-transport-http/pom.xml b/maven-resolver-transport-http/pom.xml index ec5462b32..a390fb1ca 100644 --- a/maven-resolver-transport-http/pom.xml +++ b/maven-resolver-transport-http/pom.xml @@ -152,10 +152,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/maven-resolver-transport-wagon/pom.xml b/maven-resolver-transport-wagon/pom.xml index 3f37ec260..7b8f14daa 100644 --- a/maven-resolver-transport-wagon/pom.xml +++ b/maven-resolver-transport-wagon/pom.xml @@ -125,10 +125,6 @@ - - org.eclipse.sisu - sisu-maven-plugin - biz.aQute.bnd bnd-maven-plugin diff --git a/pom.xml b/pom.xml index 7ef29e23a..cd06cea3c 100644 --- a/pom.xml +++ b/pom.xml @@ -281,6 +281,15 @@ + + + org.eclipse.sisu + org.eclipse.sisu.inject + 0.3.5 + compile + + + @@ -414,38 +423,92 @@ - org.eclipse.sisu - sisu-maven-plugin - ${sisuVersion} + org.apache.rat + apache-rat-plugin + + + src/test/resources/**/*.ini + src/test/resources/**/*.txt + src/test/resources/ssl/*-store + .travis.yml + + + + + biz.aQute.bnd + bnd-maven-plugin + 6.1.0 - generate-index + bnd-process process-classes - main-index + bnd-process + + + Bundle-SymbolicName: ${Bundle-SymbolicName} + # Export packages not containing the substring 'internal' + -exportcontents: ${removeall;${packages};${packages;NAMED;*internal*}} + # Reproducible build + -noextraheaders: true + + ${project.build.directory}/bnd/META-INF/MANIFEST.MF + - org.apache.rat - apache-rat-plugin + org.apache.maven.plugins + maven-resources-plugin + 3.2.0 + + + org.apache.maven.shared + maven-shared-utils + 3.3.4 + + + + + copy-manifest + process-classes + + copy-resources + + + ${project.build.outputDirectory} + + + + true + ${project.build.directory}/bnd + + + + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.2.0 - - src/test/resources/**/*.ini - src/test/resources/**/*.txt - src/test/resources/ssl/*-store - .travis.yml - + + + ${Automatic-Module-Name} + + biz.aQute.bnd bnd-maven-plugin - 5.1.2 + 6.1.0 bnd-process + process-classes bnd-process @@ -457,6 +520,38 @@ # Reproducible build -noextraheaders: true + ${project.build.directory}/bnd/META-INF/MANIFEST.MF + + + + + + org.apache.maven.plugins + maven-resources-plugin + 3.2.0 + + + org.apache.maven.shared + maven-shared-utils + 3.3.4 + + + + + copy-manifest + process-classes + + copy-resources + + + ${project.build.outputDirectory} + + + + true + ${project.build.directory}/bnd + + @@ -509,6 +604,15 @@ + + org.apache.maven.plugins + maven-compiler-plugin + + + **/package-info.java + + +