Script template provider for settings.gradle.kts files
This commit introduces GradleSettingsKotlinDSLTemplateProvider and registers it as Kotlin IntelliJ plugin extension.
This commit is contained in:
committed by
Ilya Chernikov
parent
5c2962e195
commit
e911a1e53d
+12
-5
@@ -88,19 +88,26 @@ abstract class AbstractGradleScriptTemplatesProvider(
|
||||
}
|
||||
}
|
||||
|
||||
class GradleKotlinDSLTemplateProvider(project: Project) : AbstractGradleScriptTemplatesProvider(
|
||||
abstract class AbstractGradleKotlinDSLTemplateProvider(project: Project, private val templateClass: String)
|
||||
: AbstractGradleScriptTemplatesProvider(
|
||||
project,
|
||||
"Gradle Kotlin DSL",
|
||||
"org.gradle.kotlin.dsl.KotlinBuildScript",
|
||||
templateClass,
|
||||
Regex("^gradle-(?:kotlin-dsl|core).*\\.jar\$")
|
||||
) {
|
||||
// TODO_R: check this against kotlin-dsl branch that uses daemon
|
||||
override val additionalResolverClasspath: List<File> get() =
|
||||
// additionally need compiler jar to load gradle resolver
|
||||
gradleLibDir.listFiles { file -> file.name.startsWith("kotlin-compiler-embeddable") }
|
||||
.firstOrNull()?.let(::listOf).orEmpty()
|
||||
// additionally need compiler jar to load gradle resolver
|
||||
gradleLibDir.listFiles { file -> file.name.startsWith("kotlin-compiler-embeddable") }
|
||||
.firstOrNull()?.let(::listOf).orEmpty()
|
||||
}
|
||||
|
||||
class GradleSettingsKotlinDSLTemplateProvider(project: Project)
|
||||
: AbstractGradleKotlinDSLTemplateProvider(project, "org.gradle.kotlin.dsl.KotlinSettingsScript")
|
||||
|
||||
class GradleKotlinDSLTemplateProvider(project: Project)
|
||||
: AbstractGradleKotlinDSLTemplateProvider(project, "org.gradle.kotlin.dsl.KotlinBuildScript")
|
||||
|
||||
class LegacyGradleScriptKotlinTemplateProvider(project: Project) : AbstractGradleScriptTemplatesProvider(
|
||||
project,
|
||||
"Gradle Script Kotlin",
|
||||
|
||||
@@ -54,6 +54,9 @@
|
||||
<projectConfigurator implementation="org.jetbrains.kotlin.idea.configuration.KotlinJsGradleModuleConfigurator"/>
|
||||
<platformGradleDetector implementation="org.jetbrains.kotlin.idea.inspections.gradle.DefaultPlatformGradleDetector"/>
|
||||
|
||||
<scriptTemplatesProvider
|
||||
implementation="org.jetbrains.kotlin.idea.core.script.GradleSettingsKotlinDSLTemplateProvider"/>
|
||||
|
||||
<scriptTemplatesProvider
|
||||
implementation="org.jetbrains.kotlin.idea.core.script.GradleKotlinDSLTemplateProvider"/>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user