gradle Error: "You must set the property 'aspectjVersion' before applying the aspectj plugin" when using kotlin DSL
gradle Error: "You must set the property 'aspectjVersion' before applying the aspectj plugin" when using kotlin DSL
我想在使用 kotlin DSL 的 gradle 项目中配置 aspectJ 插件。
下面是我的 build.gradle.kts
文件。
val aspectjVersion = "1.9.3"
plugins {
java
id("aspectj.gradle") version "0.1.6"
}
group = "java-agents-demo"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
mavenLocal()
jcenter()
}
dependencies {
implementation("org.aspectj","aspectjrt", aspectjVersion)
implementation("org.aspectj","aspectjweaver", aspectjVersion)
testCompile("junit", "junit", "4.12")
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
当我 运行 compileJava
项目时出现错误 "You must set the property 'aspectjVersion' before applying the aspectj plugin"。
我在构建文件中设置了 aspectjVersion
,但我不知道其中的错误是什么。
任何人都可以帮助我以正确的方式为我的项目设置 aspectJ 插件吗?
所以val aspectjVersion = "1.9.3"
定义了一个局部变量,但是插件正在寻找一个项目属性,请注意,这也意味着插件不能立即应用,因为插件块被评估在 build.gradle.kts
的其余部分之前(参见 limitations of plugin DSL),试试这个:
val aspectjVersion by extra("1.9.3")
plugins {
java
id("aspectj.gradle") version "0.1.6" apply false
}
apply(plugin = "aspectj.gradle")
有关详细信息,请参阅 extra properties 上的 Gradle 文档。
您还可以在 gradle.properties
文件中定义 aspectjVersion=1.9.5
,因为它是在插件之前加载的。这也适用于 Gradle 7 兼容性。
我想在使用 kotlin DSL 的 gradle 项目中配置 aspectJ 插件。
下面是我的 build.gradle.kts
文件。
val aspectjVersion = "1.9.3"
plugins {
java
id("aspectj.gradle") version "0.1.6"
}
group = "java-agents-demo"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
mavenLocal()
jcenter()
}
dependencies {
implementation("org.aspectj","aspectjrt", aspectjVersion)
implementation("org.aspectj","aspectjweaver", aspectjVersion)
testCompile("junit", "junit", "4.12")
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
当我 运行 compileJava
项目时出现错误 "You must set the property 'aspectjVersion' before applying the aspectj plugin"。
我在构建文件中设置了 aspectjVersion
,但我不知道其中的错误是什么。
任何人都可以帮助我以正确的方式为我的项目设置 aspectJ 插件吗?
所以val aspectjVersion = "1.9.3"
定义了一个局部变量,但是插件正在寻找一个项目属性,请注意,这也意味着插件不能立即应用,因为插件块被评估在 build.gradle.kts
的其余部分之前(参见 limitations of plugin DSL),试试这个:
val aspectjVersion by extra("1.9.3")
plugins {
java
id("aspectj.gradle") version "0.1.6" apply false
}
apply(plugin = "aspectj.gradle")
有关详细信息,请参阅 extra properties 上的 Gradle 文档。
您还可以在 gradle.properties
文件中定义 aspectjVersion=1.9.5
,因为它是在插件之前加载的。这也适用于 Gradle 7 兼容性。