} ?: return false
try {
- val dir = BuildManager.getInstance().getProjectSystemDirectory(project)!!
- JavaModuleIndexImpl.store(BuildDataPathsImpl(dir).targetsDataRoot, map)
+ val systemDir = BuildManager.getInstance().getProjectSystemDirectory(project)!!
+ JavaModuleIndexImpl.store(BuildDataPathsImpl(systemDir).dataStorageRoot, map)
}
catch(e: Exception) {
Logger.getInstance(JavaModuleIndexBuildTask::class.java).error(e)
import org.jetbrains.jps.javac.*;
import org.jetbrains.jps.model.JpsDummyElement;
import org.jetbrains.jps.model.JpsProject;
-import org.jetbrains.jps.model.java.*;
+import org.jetbrains.jps.model.java.JavaModuleIndex;
+import org.jetbrains.jps.model.java.JpsJavaExtensionService;
+import org.jetbrains.jps.model.java.JpsJavaSdkType;
+import org.jetbrains.jps.model.java.LanguageLevel;
import org.jetbrains.jps.model.java.compiler.*;
import org.jetbrains.jps.model.library.sdk.JpsSdk;
import org.jetbrains.jps.model.module.JpsModule;
}
private static JavaModuleIndex getJavaModuleIndex(CompileContext context) {
- File dir = context.getProjectDescriptor().dataManager.getDataPaths().getTargetsDataRoot();
- return JpsJavaExtensionService.getInstance().getJavaModuleIndex(dir);
+ File storageRoot = context.getProjectDescriptor().dataManager.getDataPaths().getDataStorageRoot();
+ return JpsJavaExtensionService.getInstance().getJavaModuleIndex(storageRoot);
}
private static class DiagnosticSink implements DiagnosticOutputConsumer {
public abstract JavaResourceRootProperties createResourceRootProperties(@NotNull String relativeOutputPath, boolean forGeneratedResource);
@NotNull
- public abstract JavaModuleIndex getJavaModuleIndex(@NotNull File indexDir);
+ public abstract JavaModuleIndex getJavaModuleIndex(@NotNull File storageRoot);
}
\ No newline at end of file
import java.util.Set;
public class JavaModuleIndexImpl extends JavaModuleIndex {
- private static final String INDEX_NAME = "jigsaw.map";
+ private static final String INDEX_DIR = "jigsaw";
+ private static final String INDEX_NAME = "module-info.map";
private static final String NULL_PATH = "-";
private static final String MODULE_INFO_FILE = "module-info.java";
return null;
}
- public static void store(@NotNull File indexDir, @NotNull Map<String, String> mapping) throws IOException {
+ public static void store(@NotNull File storageRoot, @NotNull Map<String, String> mapping) throws IOException {
Properties p = new Properties();
for (String key : mapping.keySet()) {
String path = mapping.get(key);
p.setProperty(key, path != null ? FileUtil.toSystemDependentName(path) : NULL_PATH);
}
+ File indexDir = new File(storageRoot, INDEX_DIR);
FileUtil.ensureExists(indexDir);
File index = new File(indexDir, INDEX_NAME);
}
}
- public static JavaModuleIndex load(@NotNull File indexDir) {
- File index = new File(indexDir, INDEX_NAME);
+ public static JavaModuleIndex load(@NotNull File storageRoot) {
+ File index = new File(new File(storageRoot, INDEX_DIR), INDEX_NAME);
if (!index.exists()) {
Map<String, File> mapping = ContainerUtil.newHashMap();
return new JavaModuleIndexImpl(mapping);
@NotNull
@Override
- public JavaModuleIndex getJavaModuleIndex(@NotNull File indexDir) {
+ public JavaModuleIndex getJavaModuleIndex(@NotNull File storageRoot) {
if (myModuleIndex == null) {
- myModuleIndex = JavaModuleIndexImpl.load(indexDir);
+ myModuleIndex = JavaModuleIndexImpl.load(storageRoot);
}
return myModuleIndex;
}