当我在我的脚本中执行此操作时
artifacts = ['abc123-com', 'abc123-ejb', 'abc123-spec', 'abc123-war', 'abc123-war2']
task clone_workspace() << {
for (item in artifacts) {
println item
}
}
我得到了
> Cannot set the value of read-only property 'artifacts' on root project 'abc123'.
我已尝试使用project.artifacts进行作用域设定,并使用project.ext.artifacts进行扩展。
我在这里做错了什么?
答案 0 :(得分:1)
以下极简主义Gradle文件说明project
已有artifacts
的属性(记录为here):
println "TRACER : " + project.artifacts.class
输出:
bash$ gradle
TRACER : class org.gradle.api.internal.artifacts.dsl.DefaultArtifactHandler_Decorated
相比之下,这个版本的原版更快乐:
def myArtifacts = ['abc123-com', 'abc123-ejb', 'abc123-spec', 'abc123-war', 'abc123-war2']
task clone_workspace() << {
for (item in myArtifacts) {
println item
}
}