checkstyle / checkstyle/checkstyle
Java 9 Multi-release JARs
- Dominant language
- Java
- Stars
- 9.6k
- Forks
- 4.2k
- Avg merge
- 22h 23m
- Merged PRs (30d)
- 232
Description
https://www.javaworld.com/article/3184029/java-language/java-9s-other-new-enhancements-part-4-multi-release-jar-files.html
https://blog.jetbrains.com/idea/2017/10/creating-multi-release-jar-files-in-intellij-idea/
> a library developer can release a single JAR file that:
> If you’re running it on Java 9, uses Java 9 features and functionality
> If you’re running it on a version before Java 9, you get the pre-Java-9 implementation
When we become Java 9 compliant, we should look into using multi-release JARs.
Duplicating the same code between 2 different Java languages in the future can not only allow users to downgrade our utility without problems until they are ready to commit to the new version, it will also allow us to run our Java checks on old and new Java languages at the same time.
Most likely any duplicated code would have to be moved to utility classes.
This must wait on https://github.com/checkstyle/checkstyle/issues/5102 being completed first.
Contributor guide
Assessment
This issue has not been assessed yet.