Get lein partially working under Java 9 #2152
Merged
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.
This includes three changes:
depend directly on a newer version that operates properly under Java 9
modify it. Before Java 9, the AppClassLoader was a URLClassLoader, and
therefore modifiable. This is no longer the case with Java 9.
eval-in :leiningen, andreplace it with a call to
project/init-lein-classpath. This requiredmaking the latter function public.
These changes allow some lein functionality to work under Java 9 - there
is a Java 9 issue with data.xml that needs to be fixed before lein's
tests can all pass (http://dev.clojure.org/jira/browse/DXML-32).
Once bultitude and pomegranate are updated to use the newer dynapath,
the exclusions here can be removed.
This resolves the primary issue in #2149.
Doing this as a PR to get a second set of eyes on it to make sure I'm not inadvertently breaking something.