From 4a9828250970cdb4ac303a393cd516cf6be3ce7e Mon Sep 17 00:00:00 2001 From: Alexander Kriegisch Date: Mon, 29 Mar 2021 12:45:27 +0700 Subject: [PATCH] Recreate lib/commons from Apache Commons downloads Project archeology, binary and source code comparisons of contents in lib/commons/commons.jar and lib/commons/commons-src.zip yielded the following results: - All binaries are available on Maven Central in 4 different legacy Apache Commons dependencies: * commons-beanutils:commons-beanutils:1.4 * commons-collections:commons-collections:2.0 * commons-digester:commons-digester:1.3 * commons-logging:commons-logging:1.0.1 - Those Maven Central binaries are not accompanied by source JARs, i.e. in order to recreate lib/commons/commons-src.zip we have to download source archives from the corresponding Git tags. All projects are available on GitHub, so it is possible to download them using Maven Download Plugin. - Both the compound binaries and compound sources archives currently checked in in AspectJ can be recreated using TrueZIP Maven Plugin. This is rather tedious and involves additional Maven profiles in order not to generate the compound archives during every build, but fully implemented now. Unfortunately, all of the above does not make the system-scoped dependency on commons.jar obsolete. In order to achieve that, we either have to publish the compound files on Maven Central or GitHub Packages, or we find out which AspectJ modules use classes from which of the 4 individual Apache Commons packages and replace the compound system dependency by the relevant single dependencies. Probably I am going to try that in a next step. Signed-off-by: Alexander Kriegisch --- libx/pom.xml | 301 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 298 insertions(+), 3 deletions(-) diff --git a/libx/pom.xml b/libx/pom.xml index 987ae1d11..676fb9edf 100644 --- a/libx/pom.xml +++ b/libx/pom.xml @@ -48,6 +48,58 @@ b9f3c8c31bb6c9069ad5b655059a17769af12f20 + + download-beanutils-sources + generate-resources + + wget + + + https://github.com/apache/commons-beanutils/archive/refs/tags/BEANUTILS_1_4.zip + commons + commons-beanutils-1.4-sources.jar + b2c02afe7e6475cd7c811932b8415d171a8afa00 + + + + download-collections-sources + generate-resources + + wget + + + https://github.com/apache/commons-collections/archive/refs/tags/collections-2.0.zip + commons + commons-collections-2.0-sources.jar + 824cacd0aafe21a94fb142388fd62f28a12df5ef + + + + download-digester-sources + generate-resources + + wget + + + https://github.com/apache/commons-digester/archive/refs/tags/DIGESTER_1_3.zip + commons + commons-digester-1.3-sources.jar + 49f653c7ea726301c564f9662b72c051fee9390a + + + + download-logging-sources + generate-resources + + wget + + + https://github.com/apache/commons-logging/archive/refs/tags/LOGGING_1_0_1.zip + commons + commons-logging-1.0.1-sources.jar + c61a373f6d50ff8fcfba900934f7254d44f9735b + + @@ -170,6 +222,63 @@ regexp jakarta-regexp-1.2.jar + + + + + + commons-beanutils + commons-beanutils + 1.4 + jar + false + commons + commons-beanutils-1.4.jar + + + + + commons-collections + commons-collections + 2.0 + jar + false + commons + commons-collections-2.0.jar + + + + + commons-digester + commons-digester + 1.3 + jar + false + commons + commons-digester-1.3.jar + + + + + commons-logging + commons-logging + 1.0.1 + jar + false + commons + commons-logging-1.0.1.jar + + @@ -221,10 +330,10 @@ - unzip-ant-sources + zip-ant-sources - + ant/ant-src.zip @@ -236,7 +345,7 @@ 1.2 - unzip-ant-sources + zip-ant-sources process-resources copy @@ -259,6 +368,192 @@ + + zip-commons-binaries + + + + commons/commons.jar + + + + + + org.codehaus.mojo + truezip-maven-plugin + 1.2 + + + zip-beanutils-binaries + process-resources + + copy + + + true + + + commons/commons-beanutils-1.4.jar + commons/commons.jar + + + + + zip-collections-binaries + process-resources + + copy + + + true + + + commons/commons-collections-2.0.jar + commons/commons.jar + + + + + zip-digester-binaries + process-resources + + copy + + + true + + + commons/commons-digester-1.3.jar + commons/commons.jar + + + + + zip-logging-binaries + process-resources + + copy + + + true + + + commons/commons-logging-1.0.1.jar + commons/commons.jar + + + + + + + + + + + zip-commons-sources + + + + commons/commons-src.zip + + + + + + org.codehaus.mojo + truezip-maven-plugin + 1.2 + + + zip-beanutils-sources + process-resources + + copy + + + true + + + commons/commons-beanutils-1.4-sources.jar/commons-beanutils-BEANUTILS_1_4/src/java + commons/commons-src.zip + + + + + zip-collections-sources + process-resources + + copy + + + true + + + commons/commons-collections-2.0-sources.jar/commons-collections-collections-2.0/src/java + commons/commons-src.zip + + + + + zip-digester-sources + process-resources + + copy + + + true + + + commons/commons-digester-1.3-sources.jar/commons-digester-DIGESTER_1_3/src/java + commons/commons-src.zip + + + + + zip-logging-sources + process-resources + + copy + + + true + + + commons/commons-logging-1.0.1-sources.jar/commons-logging-LOGGING_1_0_1/src/java + commons/commons-src.zip + + + + + + + + +