Implement configuration for describing only published runtime dependencies...
and fix runtime dependencies for published scripting artifacts
This commit is contained in:
@@ -4,9 +4,10 @@ import org.codehaus.groovy.runtime.InvokerHelper
|
||||
import org.gradle.api.Plugin
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import org.gradle.api.artifacts.maven.Conf2ScopeMappingContainer
|
||||
import org.gradle.api.artifacts.maven.MavenDeployment
|
||||
import org.gradle.api.artifacts.maven.MavenResolver
|
||||
|
||||
import org.gradle.api.plugins.MavenPluginConvention
|
||||
import org.gradle.api.plugins.MavenRepositoryHandlerConvention
|
||||
import org.gradle.api.publication.maven.internal.deployer.MavenRemoteRepository
|
||||
import org.gradle.api.tasks.Upload
|
||||
@@ -30,6 +31,12 @@ open class PublishedKotlinModule : Plugin<Project> {
|
||||
|
||||
plugins.apply("maven")
|
||||
|
||||
val publishedRuntime by configurations.creating {
|
||||
the<MavenPluginConvention>()
|
||||
.conf2ScopeMappings
|
||||
.addMapping(0, this, Conf2ScopeMappingContainer.RUNTIME)
|
||||
}
|
||||
|
||||
if (!project.hasProperty("prebuiltJar")) {
|
||||
plugins.apply("signing")
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
import org.gradle.api.Action
|
||||
import org.gradle.api.NamedDomainObjectContainer
|
||||
import org.gradle.api.NamedDomainObjectProvider
|
||||
import org.gradle.api.artifacts.Configuration
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import org.gradle.api.artifacts.ExternalModuleDependency
|
||||
import org.gradle.api.artifacts.dsl.DependencyHandler
|
||||
import org.gradle.kotlin.dsl.accessors.runtime.addDependencyTo
|
||||
|
||||
/*
|
||||
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
val NamedDomainObjectContainer<Configuration>.publishedRuntime: NamedDomainObjectProvider<Configuration> get() = named("publishedRuntime")
|
||||
|
||||
fun DependencyHandler.publishedRuntime(dependencyNotation: Any): Dependency? =
|
||||
add("publishedRuntime", dependencyNotation)
|
||||
|
||||
fun DependencyHandler.publishedRuntime(
|
||||
dependencyNotation: String,
|
||||
dependencyConfiguration: Action<ExternalModuleDependency>
|
||||
): ExternalModuleDependency =
|
||||
addDependencyTo(this, "publishedRuntime", dependencyNotation, dependencyConfiguration)
|
||||
|
||||
Reference in New Issue
Block a user