diff options
author | Alexander Kriegisch <Alexander@Kriegisch.name> | 2021-04-16 12:14:31 +0700 |
---|---|---|
committer | Alexander Kriegisch <Alexander@Kriegisch.name> | 2021-04-16 12:14:31 +0700 |
commit | d35885bc5faef4936aa5c4207da8f9a3a855630a (patch) | |
tree | 60a0679ccfe0b74e29f118d7c9894dbc1631f391 /aspectjweaver | |
parent | 2f981bdde6263a1ab9f5e26ce202cbd8ed51ca70 (diff) | |
download | aspectj-d35885bc5faef4936aa5c4207da8f9a3a855630a.tar.gz aspectj-d35885bc5faef4936aa5c4207da8f9a3a855630a.zip |
Use dependencies instead of copies under 'lib' for assemblies
This is one step to get rid of org.aspectj:org.eclipse.jdt.core and
org.aspectj:asm-renamed in the 'lib' directory.
AspectJ tools + weaver uber JAR builds now use dependencies in the POM
in order to deal with creating binary + source assemblies. They no
longer rely on manually updated copies under 'lib'. Details:
- Binaries are copied via 'dependencySets' in the assembly descriptor.
- Sources are unzipped via Maven Dependency Plugin before including
them into the source uber JAR via assembly descriptor.
- NEW: This also includes ASM-renamed sources which so far were
ignored. It is a positive side-effect from the fact that for
ASM-renamed Maven Shade automatically creates a source JAR.
- Maven Ant Run is no longer used for unzipping binary + source JARs.
- While working in parallel with JDT Core and AspectJ it is now much
easier to produce up to date artifacts, e.g. for consumption by
AJDT, because it does not matter anymore if we forget to run the
build in module 'lib' in order to update the JDT Core copy.
Status quo:
- Folder lib/asm is no longer used and will be removed in a subsequent
commit.
- Folder lib/jdtcore-aj is no longer used by the Maven build, but
still referenced in a few UNIX shell scripts and Ant build files.
TODO: Find out if those are still actively used. If yes, refactor
them to look for the file in the local Mavven repository. Otherwise,
delete the referencing files and also lib/jdtcore-aj.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Diffstat (limited to 'aspectjweaver')
-rw-r--r-- | aspectjweaver/aspectjweaver-assembly.xml | 26 | ||||
-rw-r--r-- | aspectjweaver/aspectjweaver-sources-assembly.xml | 11 | ||||
-rw-r--r-- | aspectjweaver/pom.xml | 46 |
3 files changed, 42 insertions, 41 deletions
diff --git a/aspectjweaver/aspectjweaver-assembly.xml b/aspectjweaver/aspectjweaver-assembly.xml index af08bc45c..4130c3c32 100644 --- a/aspectjweaver/aspectjweaver-assembly.xml +++ b/aspectjweaver/aspectjweaver-assembly.xml @@ -1,15 +1,24 @@ -<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" +<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> + xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.0 http://maven.apache.org/xsd/assembly-2.1.0.xsd"> <id>aspectjweaver</id> - + <formats> <format>jar</format> </formats> - + <includeBaseDirectory>false</includeBaseDirectory> + <dependencySets> + <dependencySet> + <unpack>true</unpack> + <includes> + <include>org.aspectj:asm-renamed</include> + </includes> + </dependencySet> + </dependencySets> + <fileSets> <fileSet> <directory>../weaver/target/classes</directory> @@ -67,15 +76,6 @@ <exclude>META-INF/maven/**</exclude> </excludes> </fileSet> - <fileSet> - <directory>target/asm-unzipped</directory> - <outputDirectory>.</outputDirectory> - <excludes> - <exclude>META-INF/maven/**</exclude> - <exclude>org/**</exclude> - <exclude>META-INF/MANIFEST.MF</exclude> - </excludes> - </fileSet> </fileSets> </assembly> diff --git a/aspectjweaver/aspectjweaver-sources-assembly.xml b/aspectjweaver/aspectjweaver-sources-assembly.xml index 17e112d39..e1760dfe5 100644 --- a/aspectjweaver/aspectjweaver-sources-assembly.xml +++ b/aspectjweaver/aspectjweaver-sources-assembly.xml @@ -1,8 +1,8 @@ -<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" +<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> + xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.0 http://maven.apache.org/xsd/assembly-2.1.0.xsd"> - <id>sources</id> +<id>aspectjweaver-sources</id> <formats> <format>jar</format> @@ -43,12 +43,11 @@ <directory>../loadtime/src/main/java</directory> <outputDirectory>.</outputDirectory> </fileSet> - <!-- + <!-- Dependencies --> <fileSet> - <directory>target/asm-unzipped</directory> + <directory>target/unzipped-sources</directory> <outputDirectory>.</outputDirectory> </fileSet> - --> </fileSets> </assembly> diff --git a/aspectjweaver/pom.xml b/aspectjweaver/pom.xml index da4b3b233..921401691 100644 --- a/aspectjweaver/pom.xml +++ b/aspectjweaver/pom.xml @@ -14,14 +14,6 @@ <packaging>pom</packaging> <name>AspectJ Weaver</name> - <dependencies> - <dependency> - <groupId>org.aspectj</groupId> - <artifactId>weaver</artifactId> - <version>${project.version}</version> - </dependency> - </dependencies> - <build> <plugins> @@ -37,26 +29,24 @@ </executions> </plugin> - <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-antrun-plugin</artifactId> - <version>3.0.0</version> + <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> - <id>unzipasm</id> + <id>unzip-dependency-sources</id> + <goals> + <goal>unpack-dependencies</goal> + </goals> <phase>prepare-package</phase> <configuration> - <target> - <echo message="unzip jarjar'd asm" /> - <unzip - src="${project.basedir}/../lib/asm/asm-9.1.renamed.jar" - dest="target/asm-unzipped" /> - </target> + <classifier>sources</classifier> + <!--<failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact>--> + <includeArtifactIds>asm-renamed</includeArtifactIds> + <outputDirectory>${project.build.directory}/unzipped-sources</outputDirectory> + <!-- Avoid accidentally shading test-scoped dependencies like JUnit --> + <includeScope>runtime</includeScope> </configuration> - <goals> - <goal>run</goal> - </goals> </execution> </executions> </plugin> @@ -82,7 +72,6 @@ <Can-Redefine-Classes>true</Can-Redefine-Classes> </manifestEntries> - <manifestSections> <manifestSection> <name>org/aspectj/weaver/</name> @@ -148,4 +137,17 @@ </plugins> </build> + + <dependencies> + <dependency> + <groupId>org.aspectj</groupId> + <artifactId>weaver</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.aspectj</groupId> + <artifactId>asm-renamed</artifactId> + </dependency> + </dependencies> + </project> |