gradle kotlin dsl - 如何为子项目配置依赖
gradle kotlin dsl - How to configure dependencies for subprojects
我正在为 kotlin 编程创建 gradle 多项目。
当我在主项目 subprojects
下创建 dependencies
时 build.gradle.kts
我收到错误 找不到名称为 'implementation' 的配置.
以下是我的配置 -
plugins {
kotlin("jvm") version "1.3.61" apply false
}
subprojects {
dependencies {
val implementation by configurations
implementation(kotlin("stdlib-jdk8"))
}
}
一旦我将插件和依赖项移动到子项目 build.gradle.kts 中,它就可以正常工作了。
如何使 subprojects
下的依赖关系正常工作?
代码已开启 github。
添加以下配置对我有用
buildscript {
repositories {
maven {
url = uri("https://plugins.gradle.org/m2/")
}
}
dependencies {
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.61")
}
}
subprojects {
apply(plugin = "java")
apply(plugin = "org.jetbrains.kotlin.jvm")
dependencies {
val implementation by configurations
implementation(kotlin("stdlib-jdk8"))
}
}
使用 Kotlin dsl,只要使用 apply(plugin = "org.jetbrains.kotlin.jvm")
或 apply(plugin = "java")
.
,就可以添加依赖项
这些需要放在您放置 dependencies { .. }
的位置,通常在 subprojects { .. }
中。
所以这里将是一个简单的 build.gradle.kts,它将在其所有子项目中传播 kotlin 依赖项。
plugins {
kotlin("jvm") version "1.3.50"
}
repositories {
mavenCentral()
}
subprojects {
apply(plugin = "org.jetbrains.kotlin.jvm")
dependencies {
implementation(kotlin("stdlib-jdk8"))
}
tasks.withType<KotlinCompile> {
kotlinOptions {
freeCompilerArgs = listOf("-Xjsr305=strict")
jvmTarget = "11"
}
}
}
(您仍然需要有 kotlin 插件,但是一旦在根目录中定义,就无需在其他子项目中指定版本)
我正在为 kotlin 编程创建 gradle 多项目。
当我在主项目 subprojects
下创建 dependencies
时 build.gradle.kts
我收到错误 找不到名称为 'implementation' 的配置.
以下是我的配置 -
plugins {
kotlin("jvm") version "1.3.61" apply false
}
subprojects {
dependencies {
val implementation by configurations
implementation(kotlin("stdlib-jdk8"))
}
}
一旦我将插件和依赖项移动到子项目 build.gradle.kts 中,它就可以正常工作了。
如何使 subprojects
下的依赖关系正常工作?
代码已开启 github。
添加以下配置对我有用
buildscript {
repositories {
maven {
url = uri("https://plugins.gradle.org/m2/")
}
}
dependencies {
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.61")
}
}
subprojects {
apply(plugin = "java")
apply(plugin = "org.jetbrains.kotlin.jvm")
dependencies {
val implementation by configurations
implementation(kotlin("stdlib-jdk8"))
}
}
使用 Kotlin dsl,只要使用 apply(plugin = "org.jetbrains.kotlin.jvm")
或 apply(plugin = "java")
.
这些需要放在您放置 dependencies { .. }
的位置,通常在 subprojects { .. }
中。
所以这里将是一个简单的 build.gradle.kts,它将在其所有子项目中传播 kotlin 依赖项。
plugins {
kotlin("jvm") version "1.3.50"
}
repositories {
mavenCentral()
}
subprojects {
apply(plugin = "org.jetbrains.kotlin.jvm")
dependencies {
implementation(kotlin("stdlib-jdk8"))
}
tasks.withType<KotlinCompile> {
kotlinOptions {
freeCompilerArgs = listOf("-Xjsr305=strict")
jvmTarget = "11"
}
}
}
(您仍然需要有 kotlin 插件,但是一旦在根目录中定义,就无需在其他子项目中指定版本)