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.
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
Replayed relevant changes from scaladoc3. #611
base: master
Are you sure you want to change the base?
Replayed relevant changes from scaladoc3. #611
Changes from all commits
3977d6b
fe64f7b
a2289db
589f8b4
22d453d
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The original purpose of Context (and findScalaContext) is to avoid / to remove every
if scalaVersion ...
over the code. Can you try to keep this approach ?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried to used getEmptyScalaCommand() but I couldn't get it working. In this case, the invocation of
dotty.tools.scaladoc.Main
raises aNullPointerException
:I tried to shift things from the bootclasspath to the normal classpath and some other things but without success. IMHO you should consider the removal of the Apache Commons Exec library in favor of
ProcessBuilder
and related classes from the JDK in the medium term. The Exec library hasn't seen any updates in years whereasProcessBuilder
and related classes have seen some improvements. I might be wrong about this but if someone upstream (Scala compiler etc.) decides that the usage ofjava.lang.Class.getClassLoader()
might come in handy you might run into a similar issue as shown above.The error above can be reproduced with the branch
classloader-issue
of the forked repo. This branch isn't merged butgit diff master..classloader-issue
gives you the relevant changes.Since we are raising external processes the outcome depends very much on how well the environment has been prepared. But, I don't think the classloader issue has something to do with the environment since the
ProcessBuilder
works well enough.I have used the interface
JavaMainCaller
to hide the internal details of the process invocation.