diff --git a/generators/src/org/jetbrains/jet/generators/tests/GenerateTests.kt b/generators/src/org/jetbrains/jet/generators/tests/GenerateTests.kt index dff9f220b7f..7d05c55ea03 100644 --- a/generators/src/org/jetbrains/jet/generators/tests/GenerateTests.kt +++ b/generators/src/org/jetbrains/jet/generators/tests/GenerateTests.kt @@ -649,6 +649,7 @@ fun main(args: Array) { testClass(javaClass()) { model("incremental/circularDependency", extension = null, excludeParentDirs = true) model("incremental/pureKotlin", extension = null, excludeParentDirs = true) + model("incremental/withJava", extension = null, excludeParentDirs = true) } } diff --git a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilder.kt b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilder.kt index 74913ee7417..fd8e782ee22 100644 --- a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilder.kt +++ b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilder.kt @@ -52,6 +52,9 @@ import org.jetbrains.jet.utils.keysToMap import org.jetbrains.jps.incremental.ModuleLevelBuilder.ExitCode.* import com.intellij.openapi.diagnostic.Logger import org.jetbrains.jet.lang.resolve.java.JvmAbi +import org.jetbrains.org.objectweb.asm.ClassReader +import org.jetbrains.jps.builders.java.JavaBuilderUtil +import com.intellij.util.containers.MultiMap public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) { class object { @@ -136,6 +139,7 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR val compilerSettings = JpsKotlinCompilerSettings.getCompilerSettings(project) val allCompiledFiles = getAllCompiledFilesContainer(context) + val filesToCompile: MultiMap if (JpsUtils.isJsKotlinModule(representativeTarget)) { if (chunk.getModules().size() > 1) { @@ -152,6 +156,8 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR val sourceFiles = KotlinSourceFileCollector.getAllKotlinSourceFiles(representativeTarget) //List sourceFiles = KotlinSourceFileCollector.getDirtySourceFiles(dirtyFilesHolder); + filesToCompile = MultiMap.emptyInstance() // won't be used + if (sourceFiles.isEmpty()) { return NOTHING_DONE } @@ -171,10 +177,7 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR + "Kotlin will compile them, but some strange effect may happen", NO_LOCATION) } - val filesToCompile = KotlinSourceFileCollector.getDirtySourceFiles(dirtyFilesHolder) - for (target in filesToCompile.keySet()) { - filesToCompile.getModifiable(target).removeAll(allCompiledFiles) - } + filesToCompile = KotlinSourceFileCollector.getDirtySourceFiles(dirtyFilesHolder) allCompiledFiles.addAll(filesToCompile.values()) val processedTargetsWithRemoved = getProcessedTargetsWithRemovedFilesContainer(context) @@ -243,6 +246,21 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR outputConsumer.registerOutputFile(target, outputFile, sourceFiles.map { it.getPath() }) } + val delta = context.getProjectDescriptor().dataManager.getMappings()!!.createDelta() + val callback = delta!!.getCallback()!! + + for (outputItem in outputItemCollector.getOutputs()) { + val outputFile = outputItem.getOutputFile() + callback.associate(FileUtil.toSystemIndependentName(outputFile.getAbsolutePath()), + outputItem.getSourceFiles().map { FileUtil.toSystemIndependentName(it.getAbsolutePath()) }, + ClassReader(outputFile.readBytes()) + ) + } + + val allCompiled = filesToCompile.values() + val compiledInThisRound = if (compilationErrors) listOf() else allCompiled + JavaBuilderUtil.updateMappings(context, delta, dirtyFilesHolder, chunk, allCompiled, compiledInThisRound) + if (compilationErrors) { return ABORT } @@ -254,7 +272,9 @@ public class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR } if (recompilationDecision == IncrementalCacheImpl.RecompilationDecision.COMPILE_OTHERS) { // TODO should mark dependencies as dirty, as well - FSOperations.markDirty(context, chunk, { file -> !allCompiledFiles.contains(file) }) + FSOperations.markDirty(context, chunk, { file -> + KotlinSourceFileCollector.isKotlinSourceFile(file) && file !in allCompiledFiles + }) } return ADDITIONAL_PASS_REQUIRED } diff --git a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinSourceFileCollector.java b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinSourceFileCollector.java index f9855199f63..353d99f2dbb 100644 --- a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinSourceFileCollector.java +++ b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinSourceFileCollector.java @@ -131,7 +131,7 @@ public class KotlinSourceFileCollector { return (Iterable) target.getModule().getSourceRoots(sourceRootType); } - private static boolean isKotlinSourceFile(File file) { + static boolean isKotlinSourceFile(File file) { return FileUtilRt.extensionEquals(file.getName(), "kt"); } diff --git a/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java b/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java index 8875bc89a7d..8c82d571c63 100644 --- a/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java +++ b/jps-plugin/test/org/jetbrains/jet/jps/build/IncrementalJpsTestGenerated.java @@ -28,7 +28,7 @@ import java.util.regex.Pattern; /** This class is generated by {@link org.jetbrains.jet.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ @SuppressWarnings("all") -@InnerTestClasses({IncrementalJpsTestGenerated.CircularDependency.class, IncrementalJpsTestGenerated.PureKotlin.class}) +@InnerTestClasses({IncrementalJpsTestGenerated.CircularDependency.class, IncrementalJpsTestGenerated.PureKotlin.class, IncrementalJpsTestGenerated.WithJava.class}) @RunWith(JUnit3RunnerWithInners.class) public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { @TestMetadata("jps-plugin/testData/incremental/circularDependency") @@ -290,6 +290,75 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest { String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/"); doTest(fileName); } + + } + + @TestMetadata("jps-plugin/testData/incremental/withJava") + @TestDataPath("$PROJECT_ROOT") + @InnerTestClasses({WithJava.JavaUsedInKotlin.class, WithJava.KotlinUsedInJava.class}) + @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) + public static class WithJava extends AbstractIncrementalJpsTest { + public void testAllFilesPresentInWithJava() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("jps-plugin/testData/incremental/withJava"), Pattern.compile("^([^\\.]+)$"), true); + } + + @TestMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin") + @TestDataPath("$PROJECT_ROOT") + @InnerTestClasses({}) + @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) + public static class JavaUsedInKotlin extends AbstractIncrementalJpsTest { + public void testAllFilesPresentInJavaUsedInKotlin() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("jps-plugin/testData/incremental/withJava/javaUsedInKotlin"), Pattern.compile("^([^\\.]+)$"), true); + } + + @TestMetadata("changeNotUsedSignature") + public void testChangeNotUsedSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/"); + doTest(fileName); + } + + @TestMetadata("changeSignature") + public void testChangeSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/"); + doTest(fileName); + } + + @TestMetadata("notChangeSignature") + public void testNotChangeSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/"); + doTest(fileName); + } + + } + + @TestMetadata("jps-plugin/testData/incremental/withJava/kotlinUsedInJava") + @TestDataPath("$PROJECT_ROOT") + @InnerTestClasses({}) + @RunWith(org.jetbrains.jet.JUnit3RunnerWithInners.class) + public static class KotlinUsedInJava extends AbstractIncrementalJpsTest { + public void testAllFilesPresentInKotlinUsedInJava() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("jps-plugin/testData/incremental/withJava/kotlinUsedInJava"), Pattern.compile("^([^\\.]+)$"), true); + } + + @TestMetadata("changeNotUsedSignature") + public void testChangeNotUsedSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/"); + doTest(fileName); + } + + @TestMetadata("changeSignature") + public void testChangeSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/"); + doTest(fileName); + } + + @TestMetadata("notChangeSignature") + public void testNotChangeSignature() throws Exception { + String fileName = JetTestUtils.navigationMetadata("jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/"); + doTest(fileName); + } + + } } } diff --git a/jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log b/jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log index 0d4503b9825..f277b681fb5 100644 --- a/jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log +++ b/jps-plugin/testData/incremental/pureKotlin/classObjectConstantChanged/build.log @@ -6,8 +6,11 @@ Compiling files: src/const.kt End of files Cleaning output files: +out/production/module/test/Klass$object.class +out/production/module/test/Klass.class out/production/module/test/Usage.class End of files Compiling files: +src/const.kt src/usage.kt End of files diff --git a/jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixed/build.log b/jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixed/build.log index 5a8dee5393d..85f35fb29cb 100644 --- a/jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixed/build.log +++ b/jps-plugin/testData/incremental/pureKotlin/compilationErrorThenFixed/build.log @@ -9,6 +9,10 @@ COMPILATION FAILED Kotlin:ERROR:Expecting an expression +Cleaning output files: +out/production/module/_DefaultPackage$fun$*.class +End of files Compiling files: +src/fun.kt src/usage.kt End of files diff --git a/jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log b/jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log index 50bc11c8e4d..66a82a4119c 100644 --- a/jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log +++ b/jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/build.log @@ -7,8 +7,12 @@ Compiling files: src/const.kt End of files Cleaning output files: +out/production/module/test/Trait$$TImpl.class +out/production/module/test/Trait$object.class +out/production/module/test/Trait.class out/production/module/test/Usage.class End of files Compiling files: +src/const.kt src/usage.kt End of files diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java new file mode 100644 index 00000000000..15f4844a8da --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java @@ -0,0 +1,4 @@ +public class JavaClass { + public static void foo() { + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java.new b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java.new new file mode 100644 index 00000000000..78acfa5f44b --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/JavaClass.java.new @@ -0,0 +1,5 @@ +public class JavaClass { + public static String foo() { + return ":)"; + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/build.log b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/build.log new file mode 100644 index 00000000000..06eb34e15ab --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/build.log @@ -0,0 +1,6 @@ +Cleaning output files: +out/production/module/JavaClass.class +End of files +Compiling files: +src/JavaClass.java +End of files diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/notUsage.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/notUsage.kt new file mode 100644 index 00000000000..8aa421dfc37 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeNotUsedSignature/notUsage.kt @@ -0,0 +1,2 @@ +fun main(args: Array) { +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java new file mode 100644 index 00000000000..15f4844a8da --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java @@ -0,0 +1,4 @@ +public class JavaClass { + public static void foo() { + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java.new b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java.new new file mode 100644 index 00000000000..78acfa5f44b --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/JavaClass.java.new @@ -0,0 +1,5 @@ +public class JavaClass { + public static String foo() { + return ":)"; + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/build.log b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/build.log new file mode 100644 index 00000000000..38e5605bee9 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/build.log @@ -0,0 +1,13 @@ +Cleaning output files: +out/production/module/JavaClass.class +End of files +Compiling files: +src/JavaClass.java +End of files +Cleaning output files: +out/production/module/_DefaultPackage$usage$*.class +out/production/module/_DefaultPackage.class +End of files +Compiling files: +src/usage.kt +End of files diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/usage.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/usage.kt new file mode 100644 index 00000000000..43c9b8575bc --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/changeSignature/usage.kt @@ -0,0 +1,3 @@ +fun main(args: Array) { + JavaClass.foo() +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java new file mode 100644 index 00000000000..15f4844a8da --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java @@ -0,0 +1,4 @@ +public class JavaClass { + public static void foo() { + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java.new b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java.new new file mode 100644 index 00000000000..15f4844a8da --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/JavaClass.java.new @@ -0,0 +1,4 @@ +public class JavaClass { + public static void foo() { + } +} diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/build.log b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/build.log new file mode 100644 index 00000000000..06eb34e15ab --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/build.log @@ -0,0 +1,6 @@ +Cleaning output files: +out/production/module/JavaClass.class +End of files +Compiling files: +src/JavaClass.java +End of files diff --git a/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/usage.kt b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/usage.kt new file mode 100644 index 00000000000..43c9b8575bc --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/javaUsedInKotlin/notChangeSignature/usage.kt @@ -0,0 +1,3 @@ +fun main(args: Array) { + JavaClass.foo() +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/NotUsage.java b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/NotUsage.java new file mode 100644 index 00000000000..9749b3a6a93 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/NotUsage.java @@ -0,0 +1,2 @@ +public class NotUsage { +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/build.log b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/build.log new file mode 100644 index 00000000000..560795823cd --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/build.log @@ -0,0 +1,7 @@ +Cleaning output files: +out/production/module/test/TestPackage$fun$*.class +out/production/module/test/TestPackage.class +End of files +Compiling files: +src/fun.kt +End of files diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt new file mode 100644 index 00000000000..c9398192af4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt @@ -0,0 +1,5 @@ +package test + +fun foo() { + +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt.new b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt.new new file mode 100644 index 00000000000..c32d0732df4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeNotUsedSignature/fun.kt.new @@ -0,0 +1,5 @@ +package test + +fun foo(): String { + return "Hello, world!" +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/Usage.java b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/Usage.java new file mode 100644 index 00000000000..c5c8cac1e85 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/Usage.java @@ -0,0 +1,5 @@ +public class Usage { + public static void main(String[] args) { + test.TestPackage.foo(); + } +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/build.log b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/build.log new file mode 100644 index 00000000000..0433af7364a --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/build.log @@ -0,0 +1,13 @@ +Cleaning output files: +out/production/module/test/TestPackage$fun$*.class +out/production/module/test/TestPackage.class +End of files +Compiling files: +src/fun.kt +End of files +Cleaning output files: +out/production/module/Usage.class +End of files +Compiling files: +src/Usage.java +End of files diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt new file mode 100644 index 00000000000..c9398192af4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt @@ -0,0 +1,5 @@ +package test + +fun foo() { + +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt.new b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt.new new file mode 100644 index 00000000000..c32d0732df4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/changeSignature/fun.kt.new @@ -0,0 +1,5 @@ +package test + +fun foo(): String { + return "Hello, world!" +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/Usage.java b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/Usage.java new file mode 100644 index 00000000000..c5c8cac1e85 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/Usage.java @@ -0,0 +1,5 @@ +public class Usage { + public static void main(String[] args) { + test.TestPackage.foo(); + } +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/build.log b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/build.log new file mode 100644 index 00000000000..560795823cd --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/build.log @@ -0,0 +1,7 @@ +Cleaning output files: +out/production/module/test/TestPackage$fun$*.class +out/production/module/test/TestPackage.class +End of files +Compiling files: +src/fun.kt +End of files diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt new file mode 100644 index 00000000000..c9398192af4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt @@ -0,0 +1,5 @@ +package test + +fun foo() { + +} diff --git a/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt.new b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt.new new file mode 100644 index 00000000000..c9398192af4 --- /dev/null +++ b/jps-plugin/testData/incremental/withJava/kotlinUsedInJava/notChangeSignature/fun.kt.new @@ -0,0 +1,5 @@ +package test + +fun foo() { + +}