[英]Environment variable not recognised in ant script
我有一个简单的Ant脚本,我想使用环境变量JUNIT_HOME传递给标签。 回显该环境变量时,它似乎是有效的:
<echo message = "JUNIT_HOME: ${env.JUNIT_HOME}" />
产生正确的输出:
但是,当我以以下方式使用它时,该构建无法声明找不到junit。
<target name="compile" depends="checkJUnitHome, init" description="compile the source ">
<javac srcdir="${src}" destdir="${build}" classpath="${env.JUNIT_HOME}\junit.jar">
<classpath refid="project.classpath" />
</javac>
</target>
如果我用完整路径替换环境变量。 它可以正常工作。
我想念什么?
亲切的问候,
马克·科尔曼
您必须先设置<property environment="env"/>
才能访问环境。
编辑
您可以尝试将classpath变量作为属性移动到内部classpath元素。 看到这个:
<target name="compile" depends="checkJUnitHome, init" description="compile the source ">
<javac srcdir="${src}" destdir="${build}">
<classpath>
<path refid="project.classpath" />
<path location="${env.JUNIT_HOME}\junit.jar" />
</classpath>
</javac>
</target>
也许它被覆盖了...
正如罗伯特指出的那样,环境变量已用双引号保存。 删除这些可以解决问题。
谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.