diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java index ccc51cacea7d..49a7dce25c80 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java @@ -38,7 +38,8 @@ import org.jetbrains.jps.incremental.storage.BuildDataManager; import org.jetbrains.jps.incremental.storage.SourceToFormMapping; import org.jetbrains.jps.javac.*; -import javax.tools.*; +import javax.tools.Diagnostic; +import javax.tools.JavaFileObject; import java.io.*; import java.net.MalformedURLException; import java.net.ServerSocket; @@ -809,13 +810,17 @@ public class JavaBuilder extends ModuleLevelBuilder { final Map> map = new LinkedHashMap>(); final boolean compilingTests = context.isCompilingTests(); for (Module module : chunk.getModules()) { + final String output = compilingTests ? module.getTestOutputPath() : module.getOutputPath(); + if (output == null) { + continue; + } final Set roots = new LinkedHashSet(); for (RootDescriptor descriptor : context.getModuleRoots(module)) { if (descriptor.isTestRoot == compilingTests) { roots.add(descriptor.root); } } - map.put(new File(compilingTests ? module.getTestOutputPath() : module.getOutputPath()), roots); + map.put(new File(output), roots); } return map; } diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/resources/ResourcesBuilder.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/resources/ResourcesBuilder.java index 044ff75f2a23..60838deade3a 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/resources/ResourcesBuilder.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/resources/ResourcesBuilder.java @@ -71,6 +71,9 @@ public class ResourcesBuilder extends ModuleLevelBuilder { String sourceRoot, final SourceToOutputMapping outputToSourceMapping) throws IOException { final String outputRoot = context.isCompilingTests() ? module.getTestOutputPath() : module.getOutputPath(); + if (outputRoot == null) { + return; + } final String relativePath = FileUtil.getRelativePath(sourceRoot, FileUtil.toSystemIndependentName(file.getPath()), '/'); final String prefix = module.getSourceRootPrefixes().get(sourceRoot);