Koa*_*lix 6 java gradle build.gradle
我有一个 java 项目,我使用 de.fuerstenau.buildconfig gradle 插件从构建脚本中设置 java 常量。我有两个任务,它们会为“HOME”常量创建一个具有不同值的战争:
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "gradle.plugin.de.fuerstenau:BuildConfigPlugin:1.1.8"
}
}
apply plugin: 'de.fuerstenau.buildconfig'
[... left out]
buildConfig {
buildConfigField 'String', 'HOME', 'TEST_HOME'
}
task createLiveOnly(type: War, dependsOn: classes, group: 'build') {
buildConfig {
buildConfigField 'String', 'HOME', 'LIVE_HOME'
}
archiveName = 'live.war'
destinationDir = file("$buildDir/libs")
}
task createTestOnly(type: War, dependsOn: classes, group: 'build') {
buildConfig {
buildConfigField 'String', 'HOME_ENV_NAME', 'ISAMT_TEST_HOME'
}
archiveName = 'test.war'
destinationDir = file("$buildDir/libs")
}
task createWars(dependsOn: [createLiveOnly, createTestOnly], group: 'build')
[... left out]
}
Run Code Online (Sandbox Code Playgroud)
意图:运行createLiveOnly时,HOME = 'LIVE_HOME'。运行 createTestOnly 时,HOME = 'TEST_HOME'。运行 createWars 时,它会为 HOME 的两个值创建这两个值。运行其他所有内容(例如标准 gradle war)时,它默认为“TEST_HOME”。不幸的是,这不起作用,因为即使仅运行 createLiveOnly,常量也始终设置为“TEST_HOME”。为什么?我该如何解决它?
感谢您的回答!
| 归档时间: |
|
| 查看次数: |
686 次 |
| 最近记录: |