Fix warnings in Kotlin JPS plugin (which are errors, actually, because of -Werror)
This commit is contained in:
@@ -97,7 +97,7 @@ object CompilerRunnerUtil {
|
||||
Class.forName("org.jetbrains.kotlin.config.Services", true, classLoader),
|
||||
Array<String>::class.java
|
||||
)
|
||||
exec.invoke(compiler.newInstance(), out, environment.services, arguments)
|
||||
exec.invoke(compiler.getDeclaredConstructor().newInstance(), out, environment.services, arguments)
|
||||
}
|
||||
|
||||
fun invokeClassesFqNames(
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.util.containers.ContainerUtil
|
||||
import org.jetbrains.jps.ModuleChunk
|
||||
import org.jetbrains.jps.builders.BuildRootDescriptor
|
||||
import org.jetbrains.jps.builders.BuildTarget
|
||||
import org.jetbrains.jps.builders.BuildTargetIndex
|
||||
import org.jetbrains.jps.builders.FileProcessor
|
||||
import org.jetbrains.jps.builders.impl.DirtyFilesHolderBase
|
||||
import org.jetbrains.jps.builders.java.JavaSourceRootDescriptor
|
||||
@@ -31,7 +32,6 @@ import org.jetbrains.jps.incremental.FSOperations
|
||||
import org.jetbrains.jps.incremental.ModuleBuildTarget
|
||||
import org.jetbrains.jps.incremental.fs.CompilationRound
|
||||
import java.io.File
|
||||
import java.util.HashMap
|
||||
import kotlin.collections.*
|
||||
|
||||
/**
|
||||
@@ -156,10 +156,30 @@ class FSOperationsHelper(
|
||||
val target = rd.target
|
||||
if (target in chunkTargets) return true
|
||||
|
||||
val targetOfFileWithDependencies = cache.getOrPut(target) { buildTargetIndex.getDependenciesRecursively(target, context) }
|
||||
val targetOfFileWithDependencies = cache.getOrPut(target) { buildTargetIndex.myGetDependenciesRecursively(target, context) }
|
||||
return ContainerUtil.intersects(targetOfFileWithDependencies, chunkTargets)
|
||||
}
|
||||
|
||||
// Copy-pasted from Intellij's deprecated method org.jetbrains.jps.builders.impl.BuildTargetIndexImpl.getDependenciesRecursively
|
||||
private fun BuildTargetIndex.myGetDependenciesRecursively(target: BuildTarget<*>, context: CompileContext): Set<BuildTarget<*>> {
|
||||
fun BuildTargetIndex.collectDependenciesRecursively(
|
||||
target: BuildTarget<*>,
|
||||
result: java.util.LinkedHashSet<in BuildTarget<*>>
|
||||
) {
|
||||
if (result.add(target)) {
|
||||
for (dep in getDependencies(target, context)) {
|
||||
collectDependenciesRecursively(dep, result)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
val result = LinkedHashSet<BuildTarget<*>>()
|
||||
for (dep in getDependencies(target, context)) {
|
||||
collectDependenciesRecursively(dep, result)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
override fun belongsToCurrentTargetChunk(file: File): Boolean {
|
||||
val rd = buildRootIndex.findJavaRootDescriptor(context, file)
|
||||
return rd != null && chunkTargets.contains(rd.target)
|
||||
|
||||
@@ -132,7 +132,6 @@ abstract class KotlinModuleBuildTarget<BuildMetaInfoType : BuildMetaInfo> intern
|
||||
)
|
||||
|
||||
// TODO(1.2.80): try replace allDependencies with KotlinChunk.collectDependentChunksRecursivelyExportedOnly
|
||||
@Deprecated("Consider using precalculated KotlinChunk.collectDependentChunksRecursivelyExportedOnly")
|
||||
val allDependencies by lazy {
|
||||
JpsJavaExtensionService.dependencies(module).recursively().exportedOnly()
|
||||
.includedIn(JpsJavaClasspathKind.compile(isTests))
|
||||
@@ -166,7 +165,7 @@ abstract class KotlinModuleBuildTarget<BuildMetaInfoType : BuildMetaInfo> intern
|
||||
val moduleExcludes = module.excludeRootsList.urls.mapTo(java.util.HashSet(), JpsPathUtil::urlToFile)
|
||||
|
||||
val compilerExcludes = JpsJavaExtensionService.getInstance()
|
||||
.getOrCreateCompilerConfiguration(module.project)
|
||||
.getCompilerConfiguration(module.project)
|
||||
.compilerExcludes
|
||||
|
||||
val buildRootIndex = localContext.projectDescriptor.buildRootIndex
|
||||
|
||||
Reference in New Issue
Block a user