-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Substitution fails during NI build when java.prefs
module is not present
#12245
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
Conversation
Thank you for your pull request and welcome to our community! To contribute, please sign the Oracle Contributor Agreement (OCA).
To sign the OCA, please create an Oracle account and sign the OCA in Oracle's Contributor Agreement Application. When signing the OCA, please provide your GitHub username. After signing the OCA and getting an OCA approval from Oracle, this PR will be automatically updated. If you are an Oracle employee, please make sure that you are a member of the main Oracle GitHub organization, and your membership in this organization is public. |
Because of this issue, we had to add |
|
|
Looks good, thanks for fixing this issue. I am wondering if we should do this systematically for all JDK substitutions. For example, we could ask the JDK substitutions to be targeted with a module. This would require us to change a lot of substitutions, but it would solve this problem for all other |
If running on a custom
I believe it is possible to implement this via a special case in the That said, I'd like to learn more about the motivation for jlinking. There might be other issues since the |
Hello Josef, thanks for considering Enso use-case...
Enso is server side application. We don't want
...yes, it would be great to let |
OK, let us merge this PR for now until we know the shape of GraalVM 25.1 better. Then we can re-iterate. I'll put this to merge and backport to 25.0.1. |
Btw. Element.getModuleOf maybe the method you are looking for, @zapster |
In enso, we are building NI from a small JDK created by
jlink
. On latest GraalVM CE 25.0.0, it is no longer possible to build NI from small JDK withoutjava.prefs
module on MacOS.Minimal reproducer
Makefile:
Main.java:
Running
make
on GraalVM CE 25.0.0, the following error is reported:Running
make
on GraalVM CE 24.0.1 is OK.Note that @JaroslavTulach was not possible to reproduce this error on Linux AMD64. Seems to affect only Mac (I have aarch64, but it probably also affects x64).
Context
java.prefs
module in NI build enso-org/enso#14051