我试图命名由gradle构建的工件。看看这个build.gradle
:
archivesBaseName='this_is_ignored'
apply plugin: 'groovy'
archivesBaseName='this_is_also_ignored'
repositories {
mavenCentral()
}
dependencies {
compile 'org.codehaus.groovy:groovy-all:2.+'
}
我也试过gradle.properties
:
archivesBaseName=`this_is_ignored_too`
在每种情况下./gradlew build
都会根据项目所在的文件夹生成一个.jar文件(据我所知它是project.name
,我只是希望用archivesBaseName
覆盖它)。
换句话说,我想:
~/gradle-helloworld > ./gradlew build
生成this_is_ignored.jar
,但它会生成gradle-helloworld.jar
。
有什么想法吗?
答案 0 :(得分:5)
(将Peter的评论转为CW答案。)
如果在应用插件之前设置archivesBaseName
,则会引入动态属性(提供弃用警告)。然后,这个动态属性将影响插件引入的属性,这就是为什么第二个赋值也没有产生预期效果的原因。解决方案是仅在应用插件后设置属性。