繁体   English   中英

蚂蚁脚本无法识别环境变量

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM