Java Bitbucket管道:无法识别build.gradle文件中的环境变量
我有一个bitbucket管道脚本和一个version.sh bash脚本,它们运行得很好。管道将调用版本脚本,并且version.sh中有由bitbucket正确引用的环境变量(我在repo的设置中添加了这些变量) 但是,我的build.gradle文件中现在也有变量,但是当我尝试Java Bitbucket管道:无法识别build.gradle文件中的环境变量,java,gradle,bitbucket-pipelines,Java,Gradle,Bitbucket Pipelines,我有一个bitbucket管道脚本和一个version.sh bash脚本,它们运行得很好。管道将调用版本脚本,并且version.sh中有由bitbucket正确引用的环境变量(我在repo的设置中添加了这些变量) 但是,我的build.gradle文件中现在也有变量,但是当我尝试gradle构建时,这些变量在管道中不断给我错误 我一直得到的错误是无法为org.gradle.api.project类型的根项目“我的项目”获取未知属性“$context\u url”。 变量位于artifacto
gradle构建时,这些变量在管道中不断给我错误
我一直得到的错误是无法为org.gradle.api.project类型的根项目“我的项目”获取未知属性“$context\u url”。
变量位于artifactory/publish部分:
artifactory {
contextUrl = $context_url
publish {
repository {
repoKey = 'repo'
username = $artifactory_user
password = $artifactory_password
}
defaults {
publications('mavenJava')
publishArtifacts = true
publishPom = true
}
}
}
我在gradle.build文件中尝试了不同的语法,例如:
$context\u url
“$context\u url”
“$context\u url”
变量在本地工作,我将变量存储在我的个人~/gradle/gradle.properties文件中
不知道还有什么可以尝试的 我想你把环境变量和渐变属性搞混了。如果您指的是环境变量,那么您可以使用以下内容引用它们:
System.getenv('context_url')
通常,环境变量以大写字母命名
当涉及到gradle属性时,如果context\u url
保存在gradle.properties
文件中,它应该可以正常工作。您可以尝试通过project
引用它,因此project.context\u url
$context\u url
和'$context\u url'
肯定不行,因为第一个变量只是一个名为$context\u url
的变量,第二个变量是字符串的实例
-字符串计算使用双引号“
我想你把环境变量和渐变属性搞混了。如果您指的是环境变量,那么您可以使用以下内容引用它们:
System.getenv('context_url')
通常,环境变量以大写字母命名
当涉及到gradle属性时,如果context\u url
保存在gradle.properties
文件中,它应该可以正常工作。您可以尝试通过project
引用它,因此project.context\u url
$context\u url
和'$context\u url'
肯定不行,因为第一个变量只是一个名为$context\u url
的变量,第二个变量是字符串的一个实例,字符串求值可以使用双引号“
如果这些变量确实是env变量,请尝试:System.getenv”('context\u url')
如果这些确实是env变量,请尝试:System.getenv('context\u url')
这使其在Bitbucket管道中通过,但在本地计算机(OSX)上的命令行上失败这使其在Bitbucket管道中通过,但在本地计算机(OSX)上的命令行上失败