Ant:无法处理环境变量集和工作目录

Posted

技术标签:

【中文标题】Ant:无法处理环境变量集和工作目录【英文标题】:Ant: Unable to process environment variables set and working directoy 【发布时间】:2011-07-18 15:38:38 【问题描述】:

在我的 CMAKE 可以运行之前,我需要设置大约 10 个环境变量。这就是我正在做的事情

我的 build.xml 顶部有以下内容

<property environment="env" />

    创建一个包含所有环境变量的批处理文件。我的 ANT Build.xml 中有类似的东西 调用 runCompile

    然后我尝试调用 CMAKE

我面临的问题是:

    我无法获取任何环境变量,例如:当我尝试打印 $env.CMAKE_COMMAND 时,它会打印 $env.CMAKE_COMMAND 而不是值

    当我尝试转到工作目录并执行批处理文件时,这也不起作用。

知道如何实现上述目标吗?

抱歉,我无法在此处粘贴 XML 代码。因此附加为图像。

【问题讨论】:

我认为您的代码格式的问题在于代码块在列表中 - 尝试将它们缩进 两次,即 8 个空格而不是 4 个。***.com/editing-help#advanced-lists 【参考方案1】:

查看exec 任务文档,您会发现有关嵌套元素env 的提示。有了这个,应该可以指定传递给系统命令的环境变量,如示例中所示:

<exec executable="emacs">
  <env key="DISPLAY" value=":1.0"/>
</exec>

【讨论】:

似乎不起作用。我仍然得到$env.CMAKE_COMMAND 打印:-( @Karthik K 我想在嵌套的 env 元素中设置环境变量不会影响执行的可执行文件之外的使用。也许您应该考虑另一种方法,例如使用here 描述的属性文件设置您的环境。您应该可以像 $CMAKE_COMMAND 一样引用它们。

以上是关于Ant:无法处理环境变量集和工作目录的主要内容,如果未能解决你的问题,请参考以下文章

批处理添加环境变量

jmeter+ant自动化执行脚本

Android采用Ant批量打包

Jmeter-Ant 生成测试报告配置步骤

使用Jacoco统计功能测试覆盖率(Ant方式)

使用Jacoco统计功能测试覆盖率(Ant方式)