rules_graalvm
rules_graalvm copied to clipboard
Modular Java builds
Since GraalVM 21 (SDK release 23.1.x
), the JPMS --module-path
plays a larger role: support for polyglot language VMs with GVM's supported suite of languages now depends on Maven artifacts, instead of "components" distributed via the GraalVM updater.
In addition to this dependency change, VMs must be declared on the Java module path instead of the classpath, and loaded into the target app via one of the supported mechanisms (typically, module-info.java
or --add-module
).
Thus, it would be great to support modular Java builds, which should include:
- [ ] Use of the
main_module
attribute to specify the entrypoint module - [ ] Calculation of the
-modulepath
flag, as applicable - [ ] Propagate
--add-opens
/--add-exports
flags