Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Toolchain, Test multiple Java Versions, and Use SDKMAN for JitPack configuration #5386

Merged
merged 5 commits into from
Oct 20, 2021

Conversation

TheFlagCourier
Copy link
Member

Description:

Updates the build toolchain. See commits for comments.


New Nodes/Commands/ConfigOptions:

No new nodes / config options / commands.

However, the following were changed:
  • Actions: Use Eclipse Temurin instead of AdoptOpenJDK (Same thing, new name)
  • Actions: Build against Java 17, test builds against both 16 and 17 on push
  • Update various dependencies
  • Jitpack: Use SDKMAN instead of a 3rd-party script to define toolset. (Tested working on FlagWar)
    • Updates Maven to 3.8.3
    • Updates Java to Temurin 17

Relevant Towny Issue ticket:

N/A


  • I have tested this pull request for defects on a server.
    • Minimally tested built Towny on local machine.

By making this pull request, I represent that I have the right to waive copyright and related rights to my contribution, and agree that all copyright and related rights in my contributions are waived, and I acknowledge that the TownyAdvanced organization has the copyright to use and modify my contribution under the Towny License for perpetuity.

This commit supplants changes made in #5309 and the following direct commits:
- 547c631
- d5362ba

This re-write of the `jitpack.yml` file removes the direct jdk declaration and 3rd-party fallback script (`https://github.com/sormuras/bach/raw/master/install-jdk.sh`) in favor of utilizing the _SDKMAN!_ package manager included in Jitpack's VMs.

It provides the following, without the need of a 3rd-party script:
- Specification of the JDK version and distribution. (Jitpack defaults to OpenJDK 8)
- Specification of the version of Apache Maven. (Jitpack defaults to 3.6.x at time of commit)

The following considerations were made:
- Use the latest available LTS JDK (Java 17)
- Use the Microsoft OpenJDK builds, as it is the common vendor for Minecraft's distribution, and would therefore likely continue to include
- Use the latest compatible Maven tooling (Maven 3.8.3, )
- HikariCP 4.0.3 >> 5.0.0 [changes](brettwooldridge/HikariCP@HikariCP-4.0.3...HikariCP-5.0.0)
- JetBrains Annotations 21.0.1 >> 22.0.0 (Adds `@Blocking` and `@NonBlocking`)
- Adventure Platform, Bukkit 4.0.0-SNAPSHOT >> 4.0.0 (Finalized Version)
- Maven Javadoc Plugin 3.2.0 >> 3.3.1 [changes](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.2.0...maven-javadoc-plugin-3.3.1)
- Use Eclipse Temurin 17 as OpenJDK provider (Replacing the legacy AdoptOpenJDK version)
- Have compile-on-push.yml test against _both_ Java 16 and Java 17.
- Use Java 17 for deployment builds.
Both Examination-API and Examination-String contain a file at `META-INF/versions/9/module-info.class`

Since we are not a modular project, and we do not directly depend on these, it's safe to filter these out of the build to prevent collisions.
@TheFlagCourier TheFlagCourier added the dependencies Pull requests that update a dependency file label Oct 20, 2021
@TheFlagCourier TheFlagCourier changed the title Force JitPack to use SDKMAN!; use Java 17 and Maven 3.8.3 This commit supplants changes made in #5309 and the following direct commits: - 547c6314b684a488d9dde6d1b4bf5195d5ddf8d8 - d5362ba41991f2a82cc478fbf0bd48c45dac99f5 Update Toolchain, Test multiple Java Versions, and Use SDKMAN for JitPack configuration Oct 20, 2021
@LlmDl LlmDl added this to the 0.97.3.0 milestone Oct 20, 2021
@LlmDl LlmDl merged commit c13ac19 into master Oct 20, 2021
@LlmDl LlmDl deleted the updates/toolchain branch October 20, 2021 12:38
@LlmDl LlmDl restored the updates/toolchain branch October 20, 2021 12:41
LlmDl added a commit that referenced this pull request Oct 20, 2021
JitPack configuration, courtesy of TheFlagCourier with PR #5386.
@LlmDl LlmDl deleted the updates/toolchain branch October 23, 2021 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants