RFR: 8297041: Remove the last remnants of sjavac
Magnus Ihse Bursie
ihse at openjdk.org
Wed Nov 16 18:47:05 UTC 2022
On Wed, 16 Nov 2022 17:51:20 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> 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.
>
> make/langtools/tools/javacserver/comp/SjavacImpl.java line 36:
>
>> 34: import java.io.PrintWriter;
>> 35: import java.io.StringWriter;
>> 36: import java.util.stream.Stream;
>
> This is a build tool, so you get to set the guidelines, but generally, this is an unusual order for imports
Haha! Calling this "unusual" is the most diplomatic expression I've heard today. :-) This is just bonkers. I used a combination of "organize imports" on IntelliJ (without setting up specific rules for the project) and a brute search-and-replace. I'll fix.
> make/langtools/tools/javacserver/comp/SjavacImpl.java line 47:
>
>> 45: * deletion without notice.</b>
>> 46: */
>> 47: public class SjavacImpl implements Sjavac {
>
> ... so it looks like there are still some vestiges of `Sjavac` ...
Yes, I did not bother renaming the files and classes in the actual javacserver implementation. I'm hoping Christian will clean this up later on anyway. I just tried to prune out the lion's share of what's not needed anymore.
> test/langtools/ProblemList.txt line 69:
>
>> 67: tools/sjavac/IgnoreSymbolFile.java 8158002 generic-all Requires investigation
>> 68: tools/sjavac/ClasspathDependencies.java 8158002 generic-all Requires investigation
>> 69:
>
> I presume these issues, 8152055, 8158002, are still open? They should either be closed or assigned to the build team.
No, I've closed them already, with a reference to this issue.
-------------
PR: https://git.openjdk.org/jdk/pull/11185
More information about the ide-support-dev
mailing list