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

Improvements to work with Java 9 #539

Merged
merged 1 commit into from Dec 13, 2016
Merged

Conversation

tobias
Copy link
Contributor

@tobias tobias commented Dec 9, 2016

Changes include:

  • update to dynapath 0.2.5 (0.2.4 was broken when AOT'd under < Java 9,
    but used under Java 9)
  • conditionally seal the AppClassLoader if it is available (it isn't
    under Java 9)
  • seal the new ParentClassLoader from boot-bin
  • use a URLClassLoader subclass that exposes .addURL so it can be
    modified (we can't call .setAccessible on URLClassLoader.addURL by
    default under Java 9) as the highest loader in the shim

This is part of the fix; boot-clj/boot-bin#4 is the other half. These changes shouldn't break users using a boot.sh without PR4.

Let me know if this (or the approach in PR4) aren't appropriate, and I'm happy to discuss more here or on slack.

Changes include:

* update to dynapath 0.2.5 (0.2.4 was broken when AOT'd under < Java 9,
  but used under Java 9)
* conditionally seal the AppClassLoader if it is available (it isn't
  under Java 9)
* seal the new ParentClassLoader from boot-bin
* use a URLClassLoader subclass that exposes .addURL so it can be
  modified (we can't call .setAccessible on URLClassLoader.addURL by
  default under Java 9) as the highest loader in the shim
@tobias
Copy link
Contributor Author

tobias commented Dec 9, 2016

I should mention that with these changes + PR4, boot works for me under Java 9-ea+148, but I haven't tried anything fancy with it, just starting a repl.

@alandipert
Copy link
Contributor

I tested that this doesn't break existing boot.sh. 👍

@alandipert alandipert merged commit aa53989 into boot-clj:master Dec 13, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants