从 Gradle 设置环境变量
我需要从 Gradle 执行一个依赖于环境变量的 Ant 脚本。
Ant 使用
来实现。
我尝试在 Gradle 中执行 env.foo="bar"
,但它引发了 Groovy 异常。
将环境变量从 Gradle 传递到 Ant 的正确方法是什么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
从 gradle 2.0 文档,我看到类似的内容这是可能的
或者在这种情况下可以使用这个
From the gradle 2.0 docs, i see something like this is possible
Or in this case could use this
一般来说,从 Gradle 或 JVM 中设置环境变量是不可能的,但可以像这样欺骗 Ant:
It is impossible to set environment variables from Gradle or JVM in general, but it is possible to trick Ant like this:
接受@Sergey 的解决方案:
在
gradle
2.9 和ant
1.9.7 上对我来说不起作用。这没有引发任何错误,但什么也不做。事实上,如果您查看代码实现为:
其中 org.apache.tools.ant.PropertyHelper#getProperties 是:
所以它会进行显式复制,但不能 工作。
正确的做法在
gradle
文件中:文档提到了一些其他方式(注意,没有项目):
Accepted solution from @Sergey:
Does not work for me on
gradle
2.9 andant
1.9.7.That did not thrown any error, but do nothing. Indeed if you are look at code it implemented as:
where org.apache.tools.ant.PropertyHelper#getProperties is:
So it make explicit copy and it can't work.
The way do it correctly in
gradle
file:Documentation mention few other ways (note, without project):