using Maven Shade Plugin.
In order to avoid committing the binary to the AspectJ SCM repository and using it as a system-scoped dependency, we
- deploy it to aspectj.dev.
+ deploy it to and Sonatype OSSRH separately, promoting releases to Maven Central. From there it can be consumed by
+ the main AspectJ build.
Whenever it is necessary to upgrade to a new ASM version in order to make AspectJ compatible with a new Java
- version, please build and deploy this module after upgrading property 'asm.version'. Make sure you have the
- credentials for write access to the aspectj.dev Maven repository WebDAV share and the correct server, profile and
- property entries in settings.xml.
-
- Then you should be able to run 'mvn clean deploy' for this module and be fine.
+ version, please build and deploy this module after upgrading property 'asm.version'.
Caveat for IntelliJ IDEA: The project cannot be built in IDEA (Ctrl-F9) if this module is visible in the Maven view.
If so, right-click it and select "Unlink Maven Projects". Unfortunately, "Ignore Projects" is not enough. If Maven
knows of this Maven module, it cannot compile other modules depending on shaded class names, because it cannot find
the binaries. IDEA will just stop looking at the local Maven repository in this case.
</description>
+ <url>https://www.eclipse.org/aspectj/</url>
+
+ <licenses>
+ <!--
+ Even though we release the package-relocated version under the 'org.aspectj' group ID, we do respect the original
+ licence, hence BSD-3 and not Eclipse
+ -->
+ <license>
+ <name>BSD-3-Clause</name>
+ <url>https://asm.ow2.io/license.html</url>
+ </license>
+ </licenses>
+
+ <developers>
+ <!--
+ AspectJ developers only. For a list of original developers, mailing lists, SCM, issue management information etc.,
+ please see the original upstream POM, e.g. https://repo1.maven.org/maven2/org/ow2/asm/asm/9.1/asm-9.1.pom
+ -->
+ <developer>
+ <id>aclement</id>
+ <name>Andy Clement</name>
+ <email>aclement@vmware.com</email>
+ </developer>
+ <developer>
+ <id>kriegaex</id>
+ <name>Alexander Kriegisch</name>
+ <email>kriegaex@aspectj.dev</email>
+ </developer>
+ </developers>
+
+ <scm>
+ <url>https://github.com/eclipse/org.aspectj</url>
+ <connection>scm:git:https://github.com/eclipse/org.aspectj.git</connection>
+ <developerConnection>scm:git:ssh://git@github.com:eclipse/org.aspectj.git</developerConnection>
+ </scm>
<properties>
<!-- By default, do not deploy artifacts - but deploy this one used by the main build -->
<artifactId>maven-shade-plugin</artifactId>
<configuration>
<createSourcesJar>true</createSourcesJar>
+ <!-- Flatten Maven plugin takes care of customising the POM for deployment -->
<createDependencyReducedPom>false</createDependencyReducedPom>
<shadedArtifactAttached>false</shadedArtifactAttached>
</configuration>
</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>
+ <fileset>
+ <directory>${project.build.directory}/${project.build.finalName}-sources.jar</directory>
+ <outputDirectory>${project.build.directory}/unpacked-sources</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>
+ <configuration>
+ <sourcepath>${project.build.directory}/unpacked-sources</sourcepath>
+ <!-- Deactivate doclint checks in order to suppress errors -->
+ <doclint>none</doclint>
+ <subpackages>aj</subpackages>
+ <javadocVersion>8</javadocVersion>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<goal>flatten</goal>
</goals>
<configuration>
- <flattenMode>defaults</flattenMode>
+ <flattenMode>oss</flattenMode>
<pomElements>
<dependencies>remove</dependencies>
+ <repositories>remove</repositories>
</pomElements>
<outputDirectory>${project.build.directory}</outputDirectory>
<flattenedPomFilename>flattened-pom.xml</flattenedPomFilename>
</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>
+ <fileset>
+ <directory>${project.build.directory}/${project.build.finalName}-sources.jar</directory>
+ <outputDirectory>${project.build.directory}/unpacked-sources</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>
+ <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>
<groupId>org.codehaus.mojo</groupId>
</plugins>
</build>
+
+ <dependencies>
+ <dependency>
+ <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>org.aspectj.matcher</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
</project>
<maven.deploy.skip>false</maven.deploy.skip>
</properties>
- <dependencies>
- <dependency>
- <groupId>org.aspectj</groupId>
- <artifactId>runtime</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
<build>
<plugins>
</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>
+ <fileset>
+ <directory>${project.build.directory}/${project.build.finalName}-sources.jar</directory>
+ <outputDirectory>${project.build.directory}/unpacked-sources</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>
+ <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>
<groupId>org.codehaus.mojo</groupId>
</plugins>
</build>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>runtime</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
</project>
</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>
<groupId>org.codehaus.mojo</groupId>
</execution>
</executions>
</plugin>
-
</plugins>
+
</build>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
- <artifactId>org.aspectj.ajdt.core</artifactId>
+ <artifactId>org.eclipse.jdt.core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>asm-renamed</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>runtime</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
- <artifactId>org.eclipse.jdt.core</artifactId>
+ <artifactId>weaver</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
- <artifactId>asm-renamed</artifactId>
+ <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>
</dependency>
</dependencies>
</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>
<groupId>org.codehaus.mojo</groupId>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>truezip-maven-plugin</artifactId>
- <version>1.2</version>
<!--
The TrueZIP plugin can seamlessly copy out of or into (nested) ZIP files as if they were normal file system
paths. No additional moves and deletes with Antrun are necessary.
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.aspectj</groupId>
<artifactId>aspectj-parent</artifactId>
- <packaging>pom</packaging>
<version>1.9.7.BUILD-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
<name>AspectJ Parent Project</name>
<properties>
<!-- Basic build properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+
<!-- By default, do not deploy artifacts - override for the ones which actually should be deployed -->
<maven.deploy.skip>true</maven.deploy.skip>
+ <!-- By default, do create javadoc - override in release profile or manually -->
+ <maven.javadoc.skip>true</maven.javadoc.skip>
+
<!-- Dependency versions -->
<jdt.core.version>3.25.0-SNAPSHOT</jdt.core.version>
<asm.version>9.1</asm.version>
</properties>
<distributionManagement>
- <repository>
- <id>aspectj-dev-deploy</id>
- <name>AspectJ.dev WebDAV Releases</name>
- <!-- Please specify the local mount point for the WebDAV share in your settings.xml -->
- <url>${aspectj.dev.webdav.share}</url>
- <uniqueVersion>false</uniqueVersion>
- </repository>
<snapshotRepository>
- <id>aspectj-dev-deploy</id>
- <name>AspectJ.dev WebDAV Snapshots</name>
- <!-- Please specify the local mount point for the WebDAV share in your settings.xml -->
- <url>${aspectj.dev.webdav.share}</url>
- <uniqueVersion>true</uniqueVersion>
+ <id>ossrh</id>
+ <url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
+ <repository>
+ <id>ossrh</id>
+ <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
+ </repository>
</distributionManagement>
<repositories>
<!--
- Repeat Central definition from super POM https://maven.apache.org/ref/3.6.3/maven-model-builder/super-pom.html.
- Define it as the first repository to search at, otherwise Maven would always search any other repositories defined
- in the POM or in settings.xml first, slowing down the build, because most artifacts reside at Maven Central. See
- https://maven.apache.org/guides/mini/guide-multiple-repositories.html#repository-order for more details.
- -->
+ Repeat Central definition from super POM https://maven.apache.org/ref/3.6.3/maven-model-builder/super-pom.html.
+ Define it as the first repository to search at, otherwise Maven would always search any other repositories defined
+ in the POM or in settings.xml first, slowing down the build, because most artifacts reside at Maven Central. See
+ https://maven.apache.org/guides/mini/guide-multiple-repositories.html#repository-order for more details.
+ -->
<repository>
<id>central</id>
<name>Central Repository</name>
<pluginRepositories>
<!--
- Repeat Central definition from super POM https://maven.apache.org/ref/3.6.3/maven-model-builder/super-pom.html.
- Define it as the first repository to search at, otherwise Maven would always search any other repositories defined
- in the POM or in settings.xml first, slowing down the build, because most artifacts reside at Maven Central. See
- https://maven.apache.org/guides/mini/guide-multiple-repositories.html#repository-order for more details.
- -->
+ Repeat Central definition from super POM https://maven.apache.org/ref/3.6.3/maven-model-builder/super-pom.html.
+ Define it as the first repository to search at, otherwise Maven would always search any other repositories defined
+ in the POM or in settings.xml first, slowing down the build, because most artifacts reside at Maven Central. See
+ https://maven.apache.org/guides/mini/guide-multiple-repositories.html#repository-order for more details.
+ -->
<pluginRepository>
<id>central</id>
<name>Central Repository</name>
<jvm.arg.addOpens>--add-opens java.base/java.lang=ALL-UNNAMED</jvm.arg.addOpens>
</properties>
</profile>
+ <profile>
+ <id>release</id>
+ <properties>
+ <!-- By default, do create javadoc - override in release profile -->
+ <maven.javadoc.skip>false</maven.javadoc.skip>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.sonatype.plugins</groupId>
+ <artifactId>nexus-staging-maven-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
<build>
<artifactId>flatten-maven-plugin</artifactId>
<version>1.2.2</version>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.6</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.8.2</version>
+ <executions>
+ <execution>
+ <id>default-deploy</id>
+ <phase>deploy</phase>
+ <goals>
+ <goal>deploy</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <!-- Deploy at the end of a multi-module build -->
+ <deployAtEnd>true</deployAtEnd>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.sonatype.plugins</groupId>
+ <artifactId>nexus-staging-maven-plugin</artifactId>
+ <version>1.6.8</version>
+ <extensions>true</extensions>
+ <configuration>
+ <serverId>ossrh</serverId>
+ <nexusUrl>https://oss.sonatype.org/</nexusUrl>
+ <autoReleaseAfterClose>false</autoReleaseAfterClose>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>truezip-maven-plugin</artifactId>
+ <version>1.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>3.2.0</version>
+ </plugin>
</plugins>
</pluginManagement>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
- <version>3.0.1</version>
<configuration>
</configuration>
<executions>