Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ant:无法处理环境变量集和工作目录_Ant - Fatal编程技术网

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

Ant:无法处理环境变量集和工作目录,ant,Ant,在我的CMAKE运行之前,我需要设置大约10个环境变量。这就是我正在做的 mybuild.xml的顶部有以下内容 <property environment="env" /> 创建包含所有环境变量的批处理文件。我的ANT Build.xml中有类似的内容 调用runCompile 然后我试着打电话给CMAKE 我面临的问题有: 我无法获取任何环境变量,例如:当我尝试打印${env.CMAKE_COMMAND}时,它打印${env.CMAKE_COMMAND}而不是值 当我

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

mybuild.xml的顶部有以下内容

<property environment="env" />

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

  • 然后我试着打电话给CMAKE
  • 我面临的问题有:

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

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

  • 你知道我怎样才能达到上述目标吗

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

    查看任务文档,您将发现有关嵌套元素的提示。这样,就可以指定要传递给系统命令的环境变量,如示例所示:

    <exec executable="emacs">
      <env key="DISPLAY" value=":1.0"/>
    </exec>
    
    
    
    我认为代码格式的问题在于代码块在列表中-尝试将它们缩进两次,即8个空格而不是4个空格。似乎不起作用。我仍然得到
    ${env.CMAKE_COMMAND}
    打印:-(Karthik K)我假设在嵌套的Env元素中设置环境变量不会影响执行的可执行文件之外的使用。也许您应该考虑用像描述的属性文件来设置环境的另一种方法。您应该能够引用它们,例如“代码> ${cMaMax命令} /代码>。