build: remove legacy Java 9+ sbt plugin references#1070
Closed
He-Pin wants to merge 1 commit into
Closed
Conversation
Motivation: Following apache/pekko#3075 which renamed Jdk9 → Jdk21 (since Java 17 is now the project baseline and JDK 9 features are part of the standard build), the AutomaticModuleName sbt plugin and `--add-opens` JVM options inherited from the Java 9 module-system era are stale references in the satellite Pekko projects. They add noise to the build and mislead developers about the actual Java baseline. Modification: - Delete project/AutomaticModuleName.scala (JPMS Automatic-Module-Name manifest helper) where it exists. - Remove `AutomaticModuleName.settings(...)` calls and inline `"Automatic-Module-Name" -> "..."` manifest entries from build.sbt. - Remove `--add-opens=java.base/...=ALL-UNNAMED` JVM options (both the single `+=` form and the `Seq(...)` form) from build.sbt. - Update stale `// JDK 11: ...` comments to `// project baseline is Java 17: ...` (aligned with apache/pekko#3075). Result: Build definitions no longer reference legacy Java 9+ module-system helpers or JVM options. Project baseline remains Java 17; no runtime behavior change for end users.
Member
Author
|
Closing — the PR scope was incorrect. AutomaticModuleName (JPMS manifest) and --add-opens (reflective library support) are functional Java 9+ features, not stale references. A correct cleanup aligned with apache/pekko#3075 should be limited to the Jdk9 sbt plugin naming (which this project doesn't have) and stale jdk9 comments. Apologies for the noise. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
Following apache/pekko#3075 which renamed the
Jdk9sbt plugin toJdk21(since Java 17 is now the project baseline and JDK 9 features are part of the standard build), theAutomaticModuleNamesbt helper and--add-opensJVM options inherited from the Java 9 module-system era are stale references in this project. They add noise to the build and mislead developers about the actual Java baseline.Modification
project/AutomaticModuleName.scala(JPMSAutomatic-Module-Namemanifest helper).AutomaticModuleName.settings(...)calls and the inline"Automatic-Module-Name" -> "..."manifest entry frombuild.sbt.--add-opens=java.base/...=ALL-UNNAMEDJVM options (both the single+=form and theSeq(...)form) frombuild.sbt.// JDK 11: ...comments to// project baseline is Java 17: ...(aligned with refactor: rename Jdk9 sbt plugin to Jdk21 pekko#3075).Result
Build definitions no longer reference legacy Java 9+ module-system helpers or JVM options. Project baseline remains Java 17; no runtime behavior change for end users. Downstream consumers relying on the previous
Automatic-Module-Namemanifest entries or on--add-opensto accessjdk.internal.miscfrom test code should note the removal.Tests
sbt "show name"— success (build.sbt parses and loads cleanly for all modules).git diff --check— clean.References
pekkobuild.