Skip to content

Commit 3c191c1

Browse files
cushoncpovirk
authored andcommitted
Use the built-in JDK 11 javac
instead of relying on the shaded/vendored version. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=301645476
1 parent cdf7665 commit 3c191c1

13 files changed

Lines changed: 219 additions & 227 deletions

core/pom.xml

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,6 @@
3939
<groupId>com.google.guava</groupId>
4040
<artifactId>guava</artifactId>
4141
</dependency>
42-
<dependency>
43-
<groupId>com.google.errorprone</groupId>
44-
<artifactId>javac-shaded</artifactId>
45-
</dependency>
4642

4743
<!-- Compile-time dependencies -->
4844
<dependency>
@@ -83,14 +79,26 @@
8379
<plugin>
8480
<artifactId>maven-javadoc-plugin</artifactId>
8581
<configuration>
86-
<source>8</source>
82+
<source>11</source>
8783
<encoding>UTF-8</encoding>
8884
<docencoding>UTF-8</docencoding>
8985
<charset>UTF-8</charset>
9086
<links>
87+
<!--
88+
TODO: try again in JDK 12: https://bugs.openjdk.java.net/browse/JDK-8212233
9189
<link>https://guava.dev/releases/${guava.version}/api/docs/</link>
92-
<link>https://docs.oracle.com/javase/8/docs/api/</link>
90+
-->
91+
<link>https://docs.oracle.com/en/java/javase/11/docs/api</link>
9392
</links>
93+
<additionalJOptions>
94+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.file=com.google.googlejavaformat</additionalJOption>
95+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.main=com.google.googlejavaformat</additionalJOption>
96+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.parser=com.google.googlejavaformat</additionalJOption>
97+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.tree=com.google.googlejavaformat</additionalJOption>
98+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.util=com.google.googlejavaformat</additionalJOption>
99+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.code=com.google.googlejavaformat</additionalJOption>
100+
<additionalJOption>--add-exports=jdk.compiler/com.sun.tools.javac.api=com.google.googlejavaformat</additionalJOption>
101+
</additionalJOptions>
94102
</configuration>
95103
<executions>
96104
<execution>
@@ -238,6 +246,14 @@
238246
</execution>
239247
</executions>
240248
</plugin>
249+
<plugin>
250+
<groupId>org.apache.maven.plugins</groupId>
251+
<artifactId>maven-compiler-plugin</artifactId>
252+
<configuration>
253+
<source>11</source>
254+
<target>11</target>
255+
</configuration>
256+
</plugin>
241257
</plugins>
242258
</build>
243259
</project>

core/src/main/java/com/google/googlejavaformat/java/DimensionHelpers.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@
1515
package com.google.googlejavaformat.java;
1616

1717
import com.google.common.collect.ImmutableList;
18+
import com.sun.source.tree.AnnotatedTypeTree;
19+
import com.sun.source.tree.AnnotationTree;
20+
import com.sun.source.tree.ArrayTypeTree;
21+
import com.sun.source.tree.Tree;
22+
import com.sun.tools.javac.tree.JCTree;
1823
import java.util.ArrayDeque;
1924
import java.util.ArrayList;
2025
import java.util.Collections;
2126
import java.util.Deque;
2227
import java.util.List;
23-
import org.openjdk.source.tree.AnnotatedTypeTree;
24-
import org.openjdk.source.tree.AnnotationTree;
25-
import org.openjdk.source.tree.ArrayTypeTree;
26-
import org.openjdk.source.tree.Tree;
27-
import org.openjdk.tools.javac.tree.JCTree;
2828

2929
/**
3030
* Utilities for working with array dimensions.

core/src/main/java/com/google/googlejavaformat/java/Formatter.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,26 @@
3131
import com.google.googlejavaformat.Newlines;
3232
import com.google.googlejavaformat.Op;
3333
import com.google.googlejavaformat.OpsBuilder;
34+
import com.sun.tools.javac.file.JavacFileManager;
35+
import com.sun.tools.javac.main.Option;
36+
import com.sun.tools.javac.parser.JavacParser;
37+
import com.sun.tools.javac.parser.ParserFactory;
38+
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
39+
import com.sun.tools.javac.util.Context;
40+
import com.sun.tools.javac.util.Log;
41+
import com.sun.tools.javac.util.Options;
3442
import java.io.IOError;
3543
import java.io.IOException;
3644
import java.net.URI;
3745
import java.util.ArrayList;
3846
import java.util.Collection;
3947
import java.util.List;
40-
import org.openjdk.javax.tools.Diagnostic;
41-
import org.openjdk.javax.tools.DiagnosticCollector;
42-
import org.openjdk.javax.tools.DiagnosticListener;
43-
import org.openjdk.javax.tools.JavaFileObject;
44-
import org.openjdk.javax.tools.SimpleJavaFileObject;
45-
import org.openjdk.javax.tools.StandardLocation;
46-
import org.openjdk.tools.javac.file.JavacFileManager;
47-
import org.openjdk.tools.javac.main.Option;
48-
import org.openjdk.tools.javac.parser.JavacParser;
49-
import org.openjdk.tools.javac.parser.ParserFactory;
50-
import org.openjdk.tools.javac.tree.JCTree.JCCompilationUnit;
51-
import org.openjdk.tools.javac.util.Context;
52-
import org.openjdk.tools.javac.util.Log;
53-
import org.openjdk.tools.javac.util.Options;
48+
import javax.tools.Diagnostic;
49+
import javax.tools.DiagnosticCollector;
50+
import javax.tools.DiagnosticListener;
51+
import javax.tools.JavaFileObject;
52+
import javax.tools.SimpleJavaFileObject;
53+
import javax.tools.StandardLocation;
5454

5555
/**
5656
* This is google-java-format, a new Java formatter that follows the Google Java Style Guide quite

core/src/main/java/com/google/googlejavaformat/java/FormatterException.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
import com.google.common.collect.Iterables;
2121
import com.google.googlejavaformat.FormatterDiagnostic;
2222
import java.util.List;
23-
import org.openjdk.javax.tools.Diagnostic;
24-
import org.openjdk.javax.tools.JavaFileObject;
23+
import javax.tools.Diagnostic;
24+
import javax.tools.JavaFileObject;
2525

2626
/** Checked exception class for formatter errors. */
2727
public final class FormatterException extends Exception {

core/src/main/java/com/google/googlejavaformat/java/ImportOrderer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@
2525
import com.google.googlejavaformat.Newlines;
2626
import com.google.googlejavaformat.java.JavaFormatterOptions.Style;
2727
import com.google.googlejavaformat.java.JavaInput.Tok;
28+
import com.sun.tools.javac.parser.Tokens.TokenKind;
2829
import java.util.ArrayList;
2930
import java.util.Comparator;
3031
import java.util.List;
3132
import java.util.Optional;
3233
import java.util.function.BiFunction;
3334
import java.util.stream.Stream;
34-
import org.openjdk.tools.javac.parser.Tokens.TokenKind;
3535

3636
/** Orders imports in Java source code. */
3737
public class ImportOrderer {

core/src/main/java/com/google/googlejavaformat/java/JavaInput.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -33,24 +33,24 @@
3333
import com.google.googlejavaformat.Input;
3434
import com.google.googlejavaformat.Newlines;
3535
import com.google.googlejavaformat.java.JavacTokens.RawTok;
36+
import com.sun.tools.javac.file.JavacFileManager;
37+
import com.sun.tools.javac.parser.Tokens.TokenKind;
38+
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
39+
import com.sun.tools.javac.util.Context;
40+
import com.sun.tools.javac.util.Log;
41+
import com.sun.tools.javac.util.Log.DeferredDiagnosticHandler;
3642
import java.io.IOException;
3743
import java.net.URI;
3844
import java.util.ArrayList;
3945
import java.util.Collection;
4046
import java.util.Iterator;
4147
import java.util.List;
42-
import org.openjdk.javax.tools.Diagnostic;
43-
import org.openjdk.javax.tools.DiagnosticCollector;
44-
import org.openjdk.javax.tools.DiagnosticListener;
45-
import org.openjdk.javax.tools.JavaFileObject;
46-
import org.openjdk.javax.tools.JavaFileObject.Kind;
47-
import org.openjdk.javax.tools.SimpleJavaFileObject;
48-
import org.openjdk.tools.javac.file.JavacFileManager;
49-
import org.openjdk.tools.javac.parser.Tokens.TokenKind;
50-
import org.openjdk.tools.javac.tree.JCTree.JCCompilationUnit;
51-
import org.openjdk.tools.javac.util.Context;
52-
import org.openjdk.tools.javac.util.Log;
53-
import org.openjdk.tools.javac.util.Log.DeferredDiagnosticHandler;
48+
import javax.tools.Diagnostic;
49+
import javax.tools.DiagnosticCollector;
50+
import javax.tools.DiagnosticListener;
51+
import javax.tools.JavaFileObject;
52+
import javax.tools.JavaFileObject.Kind;
53+
import javax.tools.SimpleJavaFileObject;
5454

5555
/** {@code JavaInput} extends {@link Input} to represent a Java input document. */
5656
public final class JavaInput extends Input {

core/src/main/java/com/google/googlejavaformat/java/JavaInputAstVisitor.java

Lines changed: 79 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,19 @@
2929
import static com.google.googlejavaformat.java.Trees.operatorName;
3030
import static com.google.googlejavaformat.java.Trees.precedence;
3131
import static com.google.googlejavaformat.java.Trees.skipParen;
32+
import static com.sun.source.tree.Tree.Kind.ANNOTATION;
33+
import static com.sun.source.tree.Tree.Kind.ARRAY_ACCESS;
34+
import static com.sun.source.tree.Tree.Kind.ASSIGNMENT;
35+
import static com.sun.source.tree.Tree.Kind.BLOCK;
36+
import static com.sun.source.tree.Tree.Kind.EXTENDS_WILDCARD;
37+
import static com.sun.source.tree.Tree.Kind.IF;
38+
import static com.sun.source.tree.Tree.Kind.METHOD_INVOCATION;
39+
import static com.sun.source.tree.Tree.Kind.NEW_ARRAY;
40+
import static com.sun.source.tree.Tree.Kind.NEW_CLASS;
41+
import static com.sun.source.tree.Tree.Kind.STRING_LITERAL;
42+
import static com.sun.source.tree.Tree.Kind.UNION_TYPE;
43+
import static com.sun.source.tree.Tree.Kind.VARIABLE;
3244
import static java.util.stream.Collectors.toList;
33-
import static org.openjdk.source.tree.Tree.Kind.ANNOTATION;
34-
import static org.openjdk.source.tree.Tree.Kind.ARRAY_ACCESS;
35-
import static org.openjdk.source.tree.Tree.Kind.ASSIGNMENT;
36-
import static org.openjdk.source.tree.Tree.Kind.BLOCK;
37-
import static org.openjdk.source.tree.Tree.Kind.EXTENDS_WILDCARD;
38-
import static org.openjdk.source.tree.Tree.Kind.IF;
39-
import static org.openjdk.source.tree.Tree.Kind.METHOD_INVOCATION;
40-
import static org.openjdk.source.tree.Tree.Kind.NEW_ARRAY;
41-
import static org.openjdk.source.tree.Tree.Kind.NEW_CLASS;
42-
import static org.openjdk.source.tree.Tree.Kind.STRING_LITERAL;
43-
import static org.openjdk.source.tree.Tree.Kind.UNION_TYPE;
44-
import static org.openjdk.source.tree.Tree.Kind.VARIABLE;
4545

4646
import com.google.common.base.MoreObjects;
4747
import com.google.common.base.Predicate;
@@ -69,6 +69,72 @@
6969
import com.google.googlejavaformat.Output.BreakTag;
7070
import com.google.googlejavaformat.java.DimensionHelpers.SortedDims;
7171
import com.google.googlejavaformat.java.DimensionHelpers.TypeWithDims;
72+
import com.sun.source.tree.AnnotatedTypeTree;
73+
import com.sun.source.tree.AnnotationTree;
74+
import com.sun.source.tree.ArrayAccessTree;
75+
import com.sun.source.tree.ArrayTypeTree;
76+
import com.sun.source.tree.AssertTree;
77+
import com.sun.source.tree.AssignmentTree;
78+
import com.sun.source.tree.BinaryTree;
79+
import com.sun.source.tree.BlockTree;
80+
import com.sun.source.tree.BreakTree;
81+
import com.sun.source.tree.CaseTree;
82+
import com.sun.source.tree.CatchTree;
83+
import com.sun.source.tree.ClassTree;
84+
import com.sun.source.tree.CompilationUnitTree;
85+
import com.sun.source.tree.CompoundAssignmentTree;
86+
import com.sun.source.tree.ConditionalExpressionTree;
87+
import com.sun.source.tree.ContinueTree;
88+
import com.sun.source.tree.DirectiveTree;
89+
import com.sun.source.tree.DoWhileLoopTree;
90+
import com.sun.source.tree.EmptyStatementTree;
91+
import com.sun.source.tree.EnhancedForLoopTree;
92+
import com.sun.source.tree.ExportsTree;
93+
import com.sun.source.tree.ExpressionStatementTree;
94+
import com.sun.source.tree.ExpressionTree;
95+
import com.sun.source.tree.ForLoopTree;
96+
import com.sun.source.tree.IdentifierTree;
97+
import com.sun.source.tree.IfTree;
98+
import com.sun.source.tree.ImportTree;
99+
import com.sun.source.tree.InstanceOfTree;
100+
import com.sun.source.tree.IntersectionTypeTree;
101+
import com.sun.source.tree.LabeledStatementTree;
102+
import com.sun.source.tree.LambdaExpressionTree;
103+
import com.sun.source.tree.LiteralTree;
104+
import com.sun.source.tree.MemberReferenceTree;
105+
import com.sun.source.tree.MemberSelectTree;
106+
import com.sun.source.tree.MethodInvocationTree;
107+
import com.sun.source.tree.MethodTree;
108+
import com.sun.source.tree.ModifiersTree;
109+
import com.sun.source.tree.ModuleTree;
110+
import com.sun.source.tree.NewArrayTree;
111+
import com.sun.source.tree.NewClassTree;
112+
import com.sun.source.tree.OpensTree;
113+
import com.sun.source.tree.ParameterizedTypeTree;
114+
import com.sun.source.tree.ParenthesizedTree;
115+
import com.sun.source.tree.PrimitiveTypeTree;
116+
import com.sun.source.tree.ProvidesTree;
117+
import com.sun.source.tree.RequiresTree;
118+
import com.sun.source.tree.ReturnTree;
119+
import com.sun.source.tree.StatementTree;
120+
import com.sun.source.tree.SwitchTree;
121+
import com.sun.source.tree.SynchronizedTree;
122+
import com.sun.source.tree.ThrowTree;
123+
import com.sun.source.tree.Tree;
124+
import com.sun.source.tree.TryTree;
125+
import com.sun.source.tree.TypeCastTree;
126+
import com.sun.source.tree.TypeParameterTree;
127+
import com.sun.source.tree.UnaryTree;
128+
import com.sun.source.tree.UnionTypeTree;
129+
import com.sun.source.tree.UsesTree;
130+
import com.sun.source.tree.VariableTree;
131+
import com.sun.source.tree.WhileLoopTree;
132+
import com.sun.source.tree.WildcardTree;
133+
import com.sun.source.util.TreePath;
134+
import com.sun.source.util.TreePathScanner;
135+
import com.sun.tools.javac.code.Flags;
136+
import com.sun.tools.javac.tree.JCTree;
137+
import com.sun.tools.javac.tree.TreeScanner;
72138
import java.util.ArrayDeque;
73139
import java.util.ArrayList;
74140
import java.util.Collection;
@@ -81,74 +147,8 @@
81147
import java.util.Set;
82148
import java.util.regex.Pattern;
83149
import java.util.stream.Stream;
150+
import javax.lang.model.element.Name;
84151
import org.checkerframework.checker.nullness.qual.Nullable;
85-
import org.openjdk.javax.lang.model.element.Name;
86-
import org.openjdk.source.tree.AnnotatedTypeTree;
87-
import org.openjdk.source.tree.AnnotationTree;
88-
import org.openjdk.source.tree.ArrayAccessTree;
89-
import org.openjdk.source.tree.ArrayTypeTree;
90-
import org.openjdk.source.tree.AssertTree;
91-
import org.openjdk.source.tree.AssignmentTree;
92-
import org.openjdk.source.tree.BinaryTree;
93-
import org.openjdk.source.tree.BlockTree;
94-
import org.openjdk.source.tree.BreakTree;
95-
import org.openjdk.source.tree.CaseTree;
96-
import org.openjdk.source.tree.CatchTree;
97-
import org.openjdk.source.tree.ClassTree;
98-
import org.openjdk.source.tree.CompilationUnitTree;
99-
import org.openjdk.source.tree.CompoundAssignmentTree;
100-
import org.openjdk.source.tree.ConditionalExpressionTree;
101-
import org.openjdk.source.tree.ContinueTree;
102-
import org.openjdk.source.tree.DirectiveTree;
103-
import org.openjdk.source.tree.DoWhileLoopTree;
104-
import org.openjdk.source.tree.EmptyStatementTree;
105-
import org.openjdk.source.tree.EnhancedForLoopTree;
106-
import org.openjdk.source.tree.ExportsTree;
107-
import org.openjdk.source.tree.ExpressionStatementTree;
108-
import org.openjdk.source.tree.ExpressionTree;
109-
import org.openjdk.source.tree.ForLoopTree;
110-
import org.openjdk.source.tree.IdentifierTree;
111-
import org.openjdk.source.tree.IfTree;
112-
import org.openjdk.source.tree.ImportTree;
113-
import org.openjdk.source.tree.InstanceOfTree;
114-
import org.openjdk.source.tree.IntersectionTypeTree;
115-
import org.openjdk.source.tree.LabeledStatementTree;
116-
import org.openjdk.source.tree.LambdaExpressionTree;
117-
import org.openjdk.source.tree.LiteralTree;
118-
import org.openjdk.source.tree.MemberReferenceTree;
119-
import org.openjdk.source.tree.MemberSelectTree;
120-
import org.openjdk.source.tree.MethodInvocationTree;
121-
import org.openjdk.source.tree.MethodTree;
122-
import org.openjdk.source.tree.ModifiersTree;
123-
import org.openjdk.source.tree.ModuleTree;
124-
import org.openjdk.source.tree.NewArrayTree;
125-
import org.openjdk.source.tree.NewClassTree;
126-
import org.openjdk.source.tree.OpensTree;
127-
import org.openjdk.source.tree.ParameterizedTypeTree;
128-
import org.openjdk.source.tree.ParenthesizedTree;
129-
import org.openjdk.source.tree.PrimitiveTypeTree;
130-
import org.openjdk.source.tree.ProvidesTree;
131-
import org.openjdk.source.tree.RequiresTree;
132-
import org.openjdk.source.tree.ReturnTree;
133-
import org.openjdk.source.tree.StatementTree;
134-
import org.openjdk.source.tree.SwitchTree;
135-
import org.openjdk.source.tree.SynchronizedTree;
136-
import org.openjdk.source.tree.ThrowTree;
137-
import org.openjdk.source.tree.Tree;
138-
import org.openjdk.source.tree.TryTree;
139-
import org.openjdk.source.tree.TypeCastTree;
140-
import org.openjdk.source.tree.TypeParameterTree;
141-
import org.openjdk.source.tree.UnaryTree;
142-
import org.openjdk.source.tree.UnionTypeTree;
143-
import org.openjdk.source.tree.UsesTree;
144-
import org.openjdk.source.tree.VariableTree;
145-
import org.openjdk.source.tree.WhileLoopTree;
146-
import org.openjdk.source.tree.WildcardTree;
147-
import org.openjdk.source.util.TreePath;
148-
import org.openjdk.source.util.TreePathScanner;
149-
import org.openjdk.tools.javac.code.Flags;
150-
import org.openjdk.tools.javac.tree.JCTree;
151-
import org.openjdk.tools.javac.tree.TreeScanner;
152152

153153
/**
154154
* An AST visitor that builds a stream of {@link Op}s to format from the given {@link

core/src/main/java/com/google/googlejavaformat/java/JavacTokens.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@
1818

1919
import com.google.common.collect.ImmutableList;
2020
import com.google.common.collect.Lists;
21+
import com.sun.tools.javac.parser.JavaTokenizer;
22+
import com.sun.tools.javac.parser.Scanner;
23+
import com.sun.tools.javac.parser.ScannerFactory;
24+
import com.sun.tools.javac.parser.Tokens.Comment;
25+
import com.sun.tools.javac.parser.Tokens.Comment.CommentStyle;
26+
import com.sun.tools.javac.parser.Tokens.Token;
27+
import com.sun.tools.javac.parser.Tokens.TokenKind;
28+
import com.sun.tools.javac.parser.UnicodeReader;
29+
import com.sun.tools.javac.util.Context;
2130
import java.util.Set;
22-
import org.openjdk.tools.javac.parser.JavaTokenizer;
23-
import org.openjdk.tools.javac.parser.Scanner;
24-
import org.openjdk.tools.javac.parser.ScannerFactory;
25-
import org.openjdk.tools.javac.parser.Tokens.Comment;
26-
import org.openjdk.tools.javac.parser.Tokens.Comment.CommentStyle;
27-
import org.openjdk.tools.javac.parser.Tokens.Token;
28-
import org.openjdk.tools.javac.parser.Tokens.TokenKind;
29-
import org.openjdk.tools.javac.parser.UnicodeReader;
30-
import org.openjdk.tools.javac.util.Context;
3131

3232
/** A wrapper around javac's lexer. */
3333
class JavacTokens {

0 commit comments

Comments
 (0)