我对Gradle还是新手,我正试图通过gradle.properties文件创建一个可配置的变量。
为此,我在项目的根目录创建了一个gradle.properties文件,并定义了如下所示的构建目录:
buildDir="~/my/custom/build/directory"在我的build.gradle文件中,我引用了如下变量:
libsDirName = buildDir这不管用。如果我将buildDir替换为gradle.properties中的字符串,它将构建到正确的位置。为什么会发生这种情况?
以下是完整的build.gradle文件:
plugins {
id 'java-library'
}
// This fails
libsDirName = buildDir
// This builds correctly
libsDirName = "~/my/custom/build/directory"
repositories {
jcenter()
}
dependencies {
api 'org.apache.commons:commons-math3:3.6.1'
implementation 'com.google.guava:guava:23.0'
testImplementation 'junit:junit:4.12'
}发布于 2019-07-01 10:58:33
编辑:只获取jar文件到特定目录.
我希望您不能限制在gradle构建期间创建tmp、资源。因此,一旦gradle成功构建,就可以将jar文件复制到特定的目录中。
我建议参考这个链接复制jar。
gradle - copy file after its generation
你变了
buildDir="~/my/custom/build/directory"至
buildDir=~/my/custom/build/directory然后试试..。
另外,您可以在println buildDir文件中添加build.gradle并检查它打印的内容。
发布于 2019-07-01 11:53:12
这不是您在Gradle文件中声明和访问变量的方式。请参阅下文:
下面是如何声明变量
def buildDir = "~/my/custom/build/directory"下面是如何使用它的值
libsDirName = "${buildDir}"如果你面临任何问题请告诉我。快乐编码:)
https://stackoverflow.com/questions/56834173
复制相似问题