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
[sbt 0.13.15] calling compile twice causes full compilation on JDK9 #3142
Comments
Some more information:
|
/cc @retronym. |
For this recompilation bug, on the first compile, a dependency on SBT does have logic to add At least in the context of supporting Java 9, SBT adds the exported I've submitted a PR that seems to fix this. |
The upcoming build of Scala 2.10.7 will have native support to deal with the removal of rt.jar in Java 9. We plan to release SBT 0.13.next based on this version. That will simplify the launcher script, the rt.jar export and However, we might also need to make the incremental compilers aware of the new platform classloader, to avoid regressing into this overcompilation bug. I'll look at that in the coming days. |
Indeed, SBT overcompiles when using the native support for rt.jar. With the project Scala version set to 2.10.7-SNAPSHOT:
2.12.4 does not appear to have the problem:
|
Right, that's because on the 2.10.x backport, I modelled the virtual rt.jar entries as SBT 0.13 ignores 2.12's
So for 2.12, SBT undercompiles if the JDK happened to be overwritten, and in 2.11 is overcompiles (probably because the underlying source of the ZipEntry is reported as |
I've added a commit to my PR that makes SBT 0.13 ignore directories as the underlying source of |
I believe this issue can be closed now, because #3701 has been merged. |
Thanks, Lars. |
Originally reported by @smarter
steps
problem
It causes full compilation.
expectation
No compilation the second times.
notes
https://gist.github.com/eed3si9n/8ee47e2e5dafaa5ef9f00833679a0a0b
The text was updated successfully, but these errors were encountered: