diff --git a/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/CompileBatch.java b/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/CompileBatch.java index 2caba1c41..957646fec 100644 --- a/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/CompileBatch.java +++ b/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/CompileBatch.java @@ -17,11 +17,11 @@ package com.itsaky.androidide.lsp.java.compiler; -import static com.itsaky.androidide.config.JavacConfigProvider.PROP_ANDROIDIDE_JAVA_HOME; -import static com.itsaky.androidide.config.JavacConfigProvider.disableModules; -import static com.itsaky.androidide.config.JavacConfigProvider.enableModules; -import static com.itsaky.androidide.config.JavacConfigProvider.setLatestSourceVersion; -import static com.itsaky.androidide.config.JavacConfigProvider.setLatestSupportedSourceVersion; +import static com.itsaky.androidide.javac.config.JavacConfigProvider.PROP_ANDROIDIDE_JAVA_HOME; +import static com.itsaky.androidide.javac.config.JavacConfigProvider.disableModules; +import static com.itsaky.androidide.javac.config.JavacConfigProvider.enableModules; +import static com.itsaky.androidide.javac.config.JavacConfigProvider.setLatestSourceVersion; +import static com.itsaky.androidide.javac.config.JavacConfigProvider.setLatestSupportedSourceVersion; import static com.itsaky.androidide.utils.Environment.JAVA_HOME; import androidx.annotation.NonNull; diff --git a/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/SourceFileManager.java b/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/SourceFileManager.java index 4ffc13121..3d75efd5a 100644 --- a/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/SourceFileManager.java +++ b/lsp/java/src/main/java/com/itsaky/androidide/lsp/java/compiler/SourceFileManager.java @@ -23,7 +23,7 @@ import static java.util.Collections.emptySet; import androidx.annotation.NonNull; import com.blankj.utilcode.util.CloseUtils; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import com.itsaky.androidide.javac.services.fs.AndroidFsProviderImpl; import com.itsaky.androidide.projects.api.AndroidModule; import com.itsaky.androidide.projects.api.ModuleProject; diff --git a/subprojects/java-compiler/src/main/java/com/itsaky/androidide/config/JavacConfigProvider.java b/subprojects/java-compiler/src/main/java/com/itsaky/androidide/javac/config/JavacConfigProvider.java similarity index 76% rename from subprojects/java-compiler/src/main/java/com/itsaky/androidide/config/JavacConfigProvider.java rename to subprojects/java-compiler/src/main/java/com/itsaky/androidide/javac/config/JavacConfigProvider.java index a8ca4ae13..9d8539df0 100644 --- a/subprojects/java-compiler/src/main/java/com/itsaky/androidide/config/JavacConfigProvider.java +++ b/subprojects/java-compiler/src/main/java/com/itsaky/androidide/javac/config/JavacConfigProvider.java @@ -1,4 +1,21 @@ -package com.itsaky.androidide.config; +/* + * This file is part of AndroidIDE. + * + * AndroidIDE is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * AndroidIDE is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with AndroidIDE. If not, see . + */ + +package com.itsaky.androidide.javac.config; import jdkx.lang.model.SourceVersion; import java.lang.reflect.Field; diff --git a/subprojects/java-compiler/src/main/java/javac/internal/jimage/ImageReaderFactory.java b/subprojects/java-compiler/src/main/java/javac/internal/jimage/ImageReaderFactory.java index 03037b386..baa36bbb2 100644 --- a/subprojects/java-compiler/src/main/java/javac/internal/jimage/ImageReaderFactory.java +++ b/subprojects/java-compiler/src/main/java/javac/internal/jimage/ImageReaderFactory.java @@ -25,6 +25,8 @@ package javac.internal.jimage; +import com.itsaky.androidide.javac.config.JavacConfigProvider; + import java.io.IOException; import java.io.UncheckedIOException; import java.nio.file.Path; @@ -47,7 +49,7 @@ public class ImageReaderFactory { private ImageReaderFactory() {} // AndroidIDE changed: Allow overriding java home. - private static final String JAVA_HOME = com.itsaky.androidide.config.JavacConfigProvider.getJavaHome(); + private static final String JAVA_HOME = JavacConfigProvider.getJavaHome(); private static final Path BOOT_MODULES_JIMAGE = Paths.get(JAVA_HOME, "lib", "modules"); diff --git a/subprojects/java-compiler/src/main/java/javac/internal/jrtfs/SystemImage.java b/subprojects/java-compiler/src/main/java/javac/internal/jrtfs/SystemImage.java index 52f10f77f..a3ff94e62 100644 --- a/subprojects/java-compiler/src/main/java/javac/internal/jrtfs/SystemImage.java +++ b/subprojects/java-compiler/src/main/java/javac/internal/jrtfs/SystemImage.java @@ -37,7 +37,7 @@ import java.security.PrivilegedAction; import javac.internal.jimage.ImageReader; import javac.internal.jimage.ImageReader.Node; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; /** * @implNote This class needs to maintain JDK 8 source compatibility. diff --git a/subprojects/java-compiler/src/main/java/jdkx/lang/model/SourceVersion.java b/subprojects/java-compiler/src/main/java/jdkx/lang/model/SourceVersion.java index bd1cca101..1e0e953ce 100644 --- a/subprojects/java-compiler/src/main/java/jdkx/lang/model/SourceVersion.java +++ b/subprojects/java-compiler/src/main/java/jdkx/lang/model/SourceVersion.java @@ -25,10 +25,7 @@ package jdkx.lang.model; -import java.util.Collections; -import java.util.Set; -import java.util.HashSet; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; /** * Source versions of the Java programming language. diff --git a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/api/JavacTool.java b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/api/JavacTool.java index cd9da5c20..bee0a96ee 100644 --- a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/api/JavacTool.java +++ b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/api/JavacTool.java @@ -40,7 +40,7 @@ import java.util.Set; import jdkx.lang.model.SourceVersion; import jdkx.tools.*; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import openjdk.source.util.JavacTask; import openjdk.tools.javac.file.JavacFileManager; import openjdk.tools.javac.main.Arguments; diff --git a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/code/Source.java b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/code/Source.java index 1b3a34b35..d229d5872 100644 --- a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/code/Source.java +++ b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/code/Source.java @@ -30,7 +30,7 @@ import java.util.*; import jdkx.lang.model.SourceVersion; import static jdkx.lang.model.SourceVersion.*; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import openjdk.tools.javac.jvm.Target; import openjdk.tools.javac.resources.CompilerProperties.Errors; import openjdk.tools.javac.resources.CompilerProperties.Fragments; diff --git a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/JRTIndex.java b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/JRTIndex.java index 43844ed0b..7ffb50839 100644 --- a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/JRTIndex.java +++ b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/JRTIndex.java @@ -47,7 +47,7 @@ import java.util.Set; import jdkx.tools.FileObject; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import com.itsaky.androidide.zipfs2.AndroidFsProvider; import openjdk.tools.javac.file.RelativePath.RelativeDirectory; import openjdk.tools.javac.util.Context; diff --git a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/Locations.java b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/Locations.java index 0fa6180ee..17cb0029e 100644 --- a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/Locations.java +++ b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/file/Locations.java @@ -77,7 +77,7 @@ import jdkx.tools.StandardJavaFileManager; import jdkx.tools.StandardJavaFileManager.PathFactory; import jdkx.tools.StandardLocation; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import openjdk.tools.javac.code.Lint; import openjdk.tools.javac.code.Lint.LintCategory; diff --git a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/platform/JDKPlatformProvider.java b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/platform/JDKPlatformProvider.java index 05d0ddacd..2666726d8 100644 --- a/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/platform/JDKPlatformProvider.java +++ b/subprojects/jdk-compiler/src/main/java/openjdk/tools/javac/platform/JDKPlatformProvider.java @@ -25,6 +25,8 @@ package openjdk.tools.javac.platform; +import com.itsaky.androidide.javac.config.JavacConfigProvider; + import java.io.IOException; import java.io.PrintWriter; import java.net.URI; @@ -49,13 +51,11 @@ import java.util.Map.Entry; import java.util.NoSuchElementException; import java.util.Set; import java.util.TreeSet; -import java.util.stream.Collectors; import java.util.stream.Stream; import jdkx.annotation.processing.Processor; import jdkx.tools.ForwardingJavaFileObject; import jdkx.tools.JavaFileManager; -import jdkx.tools.JavaFileManager.Location; import jdkx.tools.JavaFileObject; import jdkx.tools.JavaFileObject.Kind; import jdkx.tools.StandardJavaFileManager; @@ -395,7 +395,7 @@ public class JDKPlatformProvider implements PlatformProvider { static Path findCtSym() { // AndroidIDE changed: Allow overriding java home. - String javaHome = com.itsaky.androidide.config.JavacConfigProvider.getJavaHome(); + String javaHome = JavacConfigProvider.getJavaHome(); Path file = Paths.get(javaHome); // file == ${jdk.home} for (String name : symbolFileLocation) diff --git a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeprscan/Main.java b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeprscan/Main.java index dd6fd6687..ed5ae5991 100644 --- a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeprscan/Main.java +++ b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeprscan/Main.java @@ -62,14 +62,12 @@ import jdkx.tools.StandardJavaFileManager; import jdkx.tools.StandardLocation; import jdkx.tools.ToolProvider; -import com.itsaky.androidide.config.JavacConfigProvider; +import com.itsaky.androidide.javac.config.JavacConfigProvider; import openjdk.tools.javac.file.JavacFileManager; import openjdk.tools.javac.platform.JDKPlatformProvider; import openjdk.tools.jdeprscan.scan.Scan; -import static java.util.stream.Collectors.*; - import jdkx.lang.model.element.PackageElement; import jdkx.lang.model.element.TypeElement; diff --git a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsConfiguration.java b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsConfiguration.java index af697916d..c6d50217c 100644 --- a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsConfiguration.java +++ b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsConfiguration.java @@ -28,6 +28,8 @@ package openjdk.tools.jdeps; import static openjdk.tools.jdeps.Module.trace; import static java.util.stream.Collectors.*; +import com.itsaky.androidide.javac.config.JavacConfigProvider; + import openjdk.tools.classfile.Dependency; import java.io.BufferedInputStream; @@ -305,7 +307,7 @@ public class JdepsConfiguration implements AutoCloseable { static class SystemModuleFinder implements ModuleFinder { // AndroidIDE changed: Allow overriding java home. - private static final String JAVA_HOME = com.itsaky.androidide.config.JavacConfigProvider.getJavaHome(); + private static final String JAVA_HOME = JavacConfigProvider.getJavaHome(); private final FileSystem fileSystem; private final Path root; diff --git a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsTask.java b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsTask.java index aecec196e..c9f73adc7 100644 --- a/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsTask.java +++ b/subprojects/jdk-jdeps/src/main/java/openjdk/tools/jdeps/JdepsTask.java @@ -30,6 +30,8 @@ import static openjdk.tools.jdeps.Analyzer.Type.*; import static openjdk.tools.jdeps.JdepsWriter.*; import static java.util.stream.Collectors.*; +import com.itsaky.androidide.javac.config.JavacConfigProvider; + import java.io.IOException; import java.io.PrintWriter; import java.lang.module.ResolutionException; @@ -1244,7 +1246,7 @@ class JdepsTask { Pattern includePattern; boolean inverse = false; boolean compileTimeView = false; - String systemModulePath = com.itsaky.androidide.config.JavacConfigProvider.getJavaHome(); + String systemModulePath = JavacConfigProvider.getJavaHome(); String upgradeModulePath; String modulePath; Set rootModules = new HashSet<>();