Merge remote-tracking branch 'origin/pr/401'
Conflicts: libraries/tools/kotlin-gradle-plugin-core/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinGradlePluginIT.kt
This commit is contained in:
+13
-13
@@ -38,10 +38,11 @@ import org.gradle.api.artifacts.ConfigurationContainer
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import java.util.HashSet
|
||||
import org.gradle.api.UnknownDomainObjectException
|
||||
import org.gradle.api.initialization.dsl.ScriptHandler
|
||||
|
||||
val DEFAULT_ANNOTATIONS = "org.jebrains.kotlin.gradle.defaultAnnotations"
|
||||
|
||||
open class KotlinPlugin: Plugin<Project> {
|
||||
open class KotlinPlugin(val scriptHandler: ScriptHandler): Plugin<Project> {
|
||||
|
||||
public override fun apply(project: Project) {
|
||||
val javaBasePlugin = project.getPlugins().apply(javaClass<JavaBasePlugin>())
|
||||
@@ -53,7 +54,8 @@ open class KotlinPlugin: Plugin<Project> {
|
||||
configureKDoc(project, javaPluginConvention)
|
||||
|
||||
val version = project.getProperties()!!.get("kotlin.gradle.plugin.version") as String
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, GradleUtils.resolveDependencies(project, "org.jetbrains.kotlin:kotlin-jdk-annotations:$version"))
|
||||
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, GradleUtils(scriptHandler).resolveDependencies("org.jetbrains.kotlin:kotlin-jdk-annotations:$version"))
|
||||
}
|
||||
|
||||
|
||||
@@ -121,7 +123,7 @@ open class KotlinPlugin: Plugin<Project> {
|
||||
}
|
||||
|
||||
|
||||
open class KotlinAndroidPlugin: Plugin<Project> {
|
||||
open class KotlinAndroidPlugin(val scriptHandler: ScriptHandler): Plugin<Project> {
|
||||
|
||||
val log = Logging.getLogger(getClass())
|
||||
|
||||
@@ -167,7 +169,7 @@ open class KotlinAndroidPlugin: Plugin<Project> {
|
||||
|
||||
})
|
||||
val version = project.getProperties()!!.get("kotlin.gradle.plugin.version") as String
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, GradleUtils.resolveDependencies(project, "org.jetbrains.kotlin:kotlin-android-sdk-annotations:$version"));
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, GradleUtils(scriptHandler).resolveDependencies("org.jetbrains.kotlin:kotlin-android-sdk-annotations:$version"));
|
||||
}
|
||||
|
||||
private fun processVariants(variants: DefaultDomainObjectSet<out BaseVariant>, project: Project, androidExt: BaseExtension): Unit {
|
||||
@@ -272,17 +274,15 @@ open class KSpec<T: Any?>(val predicate: (T) -> Boolean): Spec<T> {
|
||||
}
|
||||
}
|
||||
|
||||
open class GradleUtils() {
|
||||
class object {
|
||||
public fun resolveDependencies(project: Project, vararg coordinates: String): Collection<File> {
|
||||
val dependencyHandler : DependencyHandler = project.getBuildscript().getDependencies()
|
||||
val configurationsContainer : ConfigurationContainer = project.getBuildscript().getConfigurations()
|
||||
open class GradleUtils(val scriptHandler: ScriptHandler) {
|
||||
public fun resolveDependencies(vararg coordinates: String): Collection<File> {
|
||||
val dependencyHandler : DependencyHandler = scriptHandler.getDependencies()
|
||||
val configurationsContainer : ConfigurationContainer = scriptHandler.getConfigurations()
|
||||
|
||||
val deps = coordinates.map { dependencyHandler.create(it) }
|
||||
val configuration = configurationsContainer.detachedConfiguration(*deps.copyToArray())
|
||||
val deps = coordinates.map { dependencyHandler.create(it) }
|
||||
val configuration = configurationsContainer.detachedConfiguration(*deps.copyToArray())
|
||||
|
||||
return configuration.getResolvedConfiguration().getFiles(KSpec({ dep -> true }))!!
|
||||
}
|
||||
return configuration.getResolvedConfiguration().getFiles(KSpec({ dep -> true }))!!
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user