The sjavac ("smart javac") was an ambitious project. It should parallelize java compilation, create a background daemon process that kept the JVM "hot" with the JITted javac code, define a public api so only noticeable changes in a class caused further dependency compilations, etc etc.
Some of this never came to fruition. Other were implemented differently, as the `depend` plugin. The only thing we're currently using (and have been for the last few years) is the "server" functionality, that is, the ability to keep a single JVM process alive, and reuse the JITted code. This code does not belong in the jdk.compiler module. It is a buildtool, pure and simple. Let's move it to it's proper place. ------------- Commit messages: - Update copyright year for javac server files - One more sjavac reference in test - Remove last references to sjavac - Move compilation of javac server to interim langtools - Update package in compilation as well - Remove or rename remaining references to sjavac - Change package name to javacserver - Clean up Options - Move javac server to buildtools - Cut last ties to javac internals... - ... and 4 more: https://git.openjdk.org/jdk/compare/d0fae43e...2124c86b Changes: https://git.openjdk.org/jdk/pull/11185/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11185&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8297041 Stats: 12695 lines in 118 files changed: 1058 ins; 11574 del; 63 mod Patch: https://git.openjdk.org/jdk/pull/11185.diff Fetch: git fetch https://git.openjdk.org/jdk pull/11185/head:pull/11185 PR: https://git.openjdk.org/jdk/pull/11185