</executions>
</plugin>
+ <!--
+ Relocate ASM from 'org.objectweb.asm' to 'aj.org.objectweb.asm'
+
+ TODO: Using Maven Shade after Maven Assembly instead of creating uber JAR and relocating package names at the
+ same time is suboptimal and maybe slower than doing both at the same time. Migrating from Assembly to Shade
+ requires all dependencies to produce source JARs, though, which currently is not the case. Because we also
+ want to create a complete source JAR, for now we keep Assembly around, because it manually copies project
+ sources from their respective directories before zipping them up.
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <configuration>
+ <createSourcesJar>true</createSourcesJar>
+ <createDependencyReducedPom>false</createDependencyReducedPom>
+ <shadedArtifactAttached>false</shadedArtifactAttached>
+ </configuration>
+ <executions>
+ <execution>
+ <id>asm-relocate</id>
+ <phase>package</phase>
+ <goals>
+ <goal>shade</goal>
+ </goals>
+ <configuration>
+ <minimizeJar>false</minimizeJar>
+ <shadeSourcesContent>true</shadeSourcesContent>
+ <artifactSet>
+ <includes>
+ <include>${project.groupId}:${project.artifactId}</include>
+ </includes>
+ </artifactSet>
+ <relocations>
+ <relocation>
+ <pattern>org.objectweb.asm</pattern>
+ <shadedPattern>aj.org.objectweb.asm</shadedPattern>
+ </relocation>
+ </relocations>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
++
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>truezip-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unzip-relocated-sources</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <!--
+ Skip, if javadoc generation is also meant to be skipped, which is the default unless the 'release'
+ profile is active or the property is overridden manually to be false. See property definitions in parent
+ POM for default case and release profile.
+ -->
+ <skip>${maven.javadoc.skip}</skip>
+ <verbose>true</verbose>
+ <!-- TODO: Include 'aj' package for ASM-renamed contained in aspectjtools? -->
+ <fileset>
+ <directory>${project.build.directory}/${project.build.finalName}-sources.jar/org/aspectj</directory>
+ <outputDirectory>${project.build.directory}/unpacked-sources/org/aspectj</outputDirectory>
+ </fileset>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>3.2.0</version>
+ <executions>
+ <execution>
+ <id>javadoc-jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <!--
+ FIXME: This configuration works with JDK 16, but throws errors on other JDK versions, e.g. 14. It looks as
+ if the Maven Javadoc plugin does not do a particularly good job applying the plugin settings in a way
+ making it work with different JDK javadoc tool versions. I am saying that, because when using the tool
+ directly on the console, it works with basic settings and the correct classpath.
+ -->
+ <configuration>
+ <sourcepath>${project.build.directory}/unpacked-sources</sourcepath>
+ <!-- TODO: Include 'aj' package for ASM-renamed contained in aspectjtools? -->
+ <subpackages>org.aspectj</subpackages>
+ <!-- Deactivate doclint checks in order to suppress errors -->
+ <doclint>none</doclint>
+ <!-- Generate class use xref, making javadocs considerably bigger, but also more informative -->
+ <use>true</use>
+ <!-- FIXME: Why does it fail without this parameter? -->
+ <javadocVersion>8</javadocVersion>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<!-- Caveat: Attaching the flattened POM needs packaging=jar, so do not use packaging=pom for this module -->
<plugin>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
- <artifactId>org.eclipse.jdt.core</artifactId>
+ <artifactId>weaver</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
++<<<<<<< HEAD
+ <groupId>org.ow2.asm</groupId>
+ <artifactId>asm</artifactId>
++=======
+ <groupId>org.aspectj</groupId>
+ <artifactId>util</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>bridge</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>asm</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>org.aspectj.matcher</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>bcel-builder</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>loadtime</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>ajbrowser</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>ajde</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>ajde.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>ajdoc</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>org.aspectj.ajdt.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>taskdefs</artifactId>
+ <version>${project.version}</version>
++>>>>>>> xander/maven-central-deployment
</dependency>
</dependencies>
</executions>
</plugin>
+ <!--
+ Relocate ASM from 'org.objectweb.asm' to 'aj.org.objectweb.asm'
+
+ TODO: Using Maven Shade after Maven Assembly instead of creating uber JAR and relocating package names at the
+ same time is suboptimal and maybe slower than doing both at the same time. Migrating from Assembly to Shade
+ requires all dependencies to produce source JARs, though, which currently is not the case. Because we also
+ want to create a complete source JAR, for now we keep Assembly around, because it manually copies project
+ sources from their respective directories before zipping them up.
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <configuration>
+ <createSourcesJar>true</createSourcesJar>
+ <createDependencyReducedPom>false</createDependencyReducedPom>
+ <shadedArtifactAttached>false</shadedArtifactAttached>
+ </configuration>
+ <executions>
+ <execution>
+ <id>asm-relocate</id>
+ <phase>package</phase>
+ <goals>
+ <goal>shade</goal>
+ </goals>
+ <configuration>
+ <minimizeJar>false</minimizeJar>
+ <shadeSourcesContent>true</shadeSourcesContent>
+ <artifactSet>
+ <includes>
+ <include>${project.groupId}:${project.artifactId}</include>
+ </includes>
+ </artifactSet>
+ <relocations>
+ <relocation>
+ <pattern>org.objectweb.asm</pattern>
+ <shadedPattern>aj.org.objectweb.asm</shadedPattern>
+ </relocation>
+ </relocations>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
++
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>truezip-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unzip-relocated-sources</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <!--
+ Skip, if javadoc generation is also meant to be skipped, which is the default unless the 'release'
+ profile is active or the property is overridden manually to be false. See property definitions in parent
+ POM for default case and release profile.
+ -->
+ <skip>${maven.javadoc.skip}</skip>
+ <verbose>true</verbose>
+ <!-- TODO: Include 'aj' package for ASM-renamed contained in aspectjweaver? -->
+ <fileset>
+ <directory>${project.build.directory}/${project.build.finalName}-sources.jar/org/aspectj</directory>
+ <outputDirectory>${project.build.directory}/unpacked-sources/org/aspectj</outputDirectory>
+ </fileset>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>3.2.0</version>
+ <executions>
+ <execution>
+ <id>javadoc-jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <!--
+ FIXME: This configuration works with JDK 16, but throws errors on other JDK versions, e.g. 14. It looks as
+ if the Maven Javadoc plugin does not do a particularly good job applying the plugin settings in a way
+ making it work with different JDK javadoc tool versions. I am saying that, because when using the tool
+ directly on the console, it works with basic settings and the correct classpath.
+ -->
+ <configuration>
+ <sourcepath>${project.build.directory}/unpacked-sources</sourcepath>
+ <!-- TODO: Include 'aj' package for ASM-renamed contained in aspectjtools? -->
+ <subpackages>org.aspectj</subpackages>
+ <!-- Deactivate doclint checks in order to suppress errors -->
+ <doclint>none</doclint>
+ <!-- Generate class use xref, making javadocs considerably bigger, but also more informative -->
+ <use>true</use>
+ <!-- FIXME: Why does it fail without this parameter? -->
+ <javadocVersion>8</javadocVersion>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<!-- Caveat: Attaching the flattened POM needs packaging=jar, so do not use packaging=pom for this module -->
<plugin>