Refactor getting dependencies for script files API
Deprecate KotlinScriptDefinition#getDependenciesFor Expose dependencyResolver as a property KotlinScriptExternalImportsProvider is the component clients should be asking for dependencies
This commit is contained in:
@@ -463,7 +463,7 @@ class K2JVMCompiler : CLICompiler<K2JVMCompilerArguments>() {
|
||||
messageCollector.report(
|
||||
INFO,
|
||||
"Added script definition $template to configuration: files pattern = \"${def.scriptFilePattern}\", " +
|
||||
"resolver = ${def.resolver?.javaClass?.name}"
|
||||
"resolver = ${def.dependencyResolver.javaClass.name}"
|
||||
)
|
||||
}
|
||||
catch (ex: ClassNotFoundException) {
|
||||
|
||||
@@ -187,7 +187,7 @@ class KotlinCoreEnvironment private constructor(
|
||||
|
||||
KotlinScriptExternalImportsProvider.getInstance(project)?.let { importsProvider ->
|
||||
configuration.addJvmClasspathRoots(
|
||||
sourceFiles.mapNotNull(importsProvider::getExternalImports)
|
||||
sourceFiles.mapNotNull(importsProvider::getScriptDependencies)
|
||||
.flatMap { it.classpath }
|
||||
.distinctBy { it.absolutePath })
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ import org.jetbrains.kotlin.psi.KtScriptInitializer
|
||||
import org.jetbrains.kotlin.psi.psiUtil.getChildOfType
|
||||
import org.jetbrains.kotlin.renderer.DescriptorRenderer
|
||||
import org.jetbrains.kotlin.script.KotlinScriptDefinition
|
||||
import org.jetbrains.kotlin.script.KotlinScriptExternalImportsProvider
|
||||
import java.io.File
|
||||
import java.util.concurrent.locks.ReentrantReadWriteLock
|
||||
import kotlin.concurrent.write
|
||||
@@ -67,7 +68,7 @@ open class GenericReplCompiler(disposable: Disposable,
|
||||
Pair(compilerState.lastLineState!!.psiFile, compilerState.lastLineState!!.errorHolder)
|
||||
}
|
||||
|
||||
val newDependencies = scriptDefinition.getDependenciesFor(psiFile, checker.environment.project, compilerState.lastDependencies)
|
||||
val newDependencies = KotlinScriptExternalImportsProvider.getInstance(checker.environment.project).getScriptDependencies(psiFile)
|
||||
var classpathAddendum: List<File>? = null
|
||||
if (compilerState.lastDependencies != newDependencies) {
|
||||
compilerState.lastDependencies = newDependencies
|
||||
|
||||
Reference in New Issue
Block a user