On Wed, 16 Nov 2022 17:51:20 GMT, Jonathan Gibbons <j...@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

Reply via email to