Clean up build scripts and rework shading/relocation

ACF deps such as timings lib and expiring map will now properly
be relocated into ACF.

This will avoid version conflicts with ExpiringMap and TimingsLib

Sadly, because locales is an exposed API, we can not relocate locales...

It will still be on plugins to add the locales relocation themselves.
Will update wiki to document this.

also updated maven plugins to newest versions, minus surefire, as
3.0 doesn't work with current setup. Went to latest 2.x there.

Got rid of a lot of duplicated shade configuration stuff across
submodules too.
This commit is contained in:
Aikar
2020-04-26 17:43:08 -04:00
parent 9a9c366dfe
commit 1eddc2cb8b
5 changed files with 30 additions and 89 deletions
+22 -8
View File
@@ -63,7 +63,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
@@ -76,12 +76,12 @@
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<version>2.22.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.1</version>
<version>3.2.0</version>
<executions>
<execution>
<id>attach-sources</id>
@@ -94,7 +94,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.1</version>
<version>3.2.3</version>
<executions>
<execution>
<phase>package</phase>
@@ -104,15 +104,29 @@
</execution>
</executions>
<configuration>
<dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
<!-- when downloading via Maven we can pull depends individually -->
<shadedArtifactAttached>true</shadedArtifactAttached>
<relocations>
<relocation>
<pattern>net.jodah.expiringmap</pattern>
<shadedPattern>co.aikar.commands.lib.expiringmap</shadedPattern>
</relocation>
<relocation>
<pattern>co.aikar.util</pattern>
<shadedPattern>co.aikar.commands.lib.util</shadedPattern>
</relocation>
<relocation>
<pattern>co.aikar.timings.lib</pattern>
<shadedPattern>co.aikar.commands.lib.timings</shadedPattern>
</relocation>
</relocations>
<dependencyReducedPomLocation>
${project.build.directory}/dependency-reduced-pom.xml
</dependencyReducedPomLocation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.0.1</version>
<version>3.2.0</version>
<configuration>
<destDir>../docs/${project.artifactId}/</destDir>
<quiet>true</quiet>