如何在Gradle中设置带有变量的JAR版本?
如果我写
ext.nd4j_version = "1.0.0-beta2"
ext.nd4j_backend = "nd4j-native-platform"
dependencies {
compile group: 'org.nd4j', name: '${nd4j_backend}', version: '${nd4j_version}'
它无法找到工件。
如果我写
nd4j_version = "1.0.0-beta2"
nd4j_backend = "nd4j-native-platform"
dependencies {
compile group: 'org.nd4j', name: '${nd4j_backend}', version: '${nd4j_version}'
然后它能够找到工件,但会发出警告
Could not set unknown property 'nd4j_version' for root project
更新
以下内容也不起作用
ext.nd4j_version = "1.0.0-beta2"
ext.nd4j_backend = "nd4j-native-platform"
dependencies {
compile group: 'org.nd4j', name: '${project.ext.nd4j_backend}', version: '${project.ext.nd4j_version}' // works
以及以下
ext.nd4j_version = "1.0.0-beta2"
ext.nd4j_backend = "nd4j-native-platform"
dependencies {
compile group: 'org.nd4j', name: '${rootProject.ext.nd4j_backend}', version: '${rootProject.ext.nd4j_version}'
以及以下
ext {
nd4j_version = "1.0.0-beta2"
nd4j_backend = "nd4j-native-platform"
}
dependencies {
compile group: 'org.nd4j', name: '${project.nd4j_backend}', version: '${project.ext.nd4j_version}'
请给出一个解释的答案,而不仅仅是随机的工作语法。
删除'{$}'
并按原样使用变量。
ext.nd4j_version = "1.0.0-beta2"
ext.nd4j_backend = "nd4j-native-platform"
dependencies {
compile group: 'org.nd4j', name: nd4j_backend, version: nd4j_version
编辑:您也可以在${}
:中使用双引号
dependencies {
compile group: 'org.nd4j', name: "${nd4j_backend}", version: "${nd4j_version}"