将环境变量传递给ant任务,没有ANT_OPTS

时间:2012-03-26 19:19:59

标签: ant environment-variables

我正在调用Jasper ant任务,我想设置org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING环境变量。我可以将ANT_OPTS设置为-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false并且它可以正常工作。但是,我想要一个可以放入build.xml的设置,所以我不需要告诉我的队友他们需要设置ANT_OPTS。

我试过

<property name="env.org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING" 
    value="false"/>

但这似乎不起作用。

如何将环境变量传递给ant任务?

编辑:通过“不起作用”,我的意思是我收到错误说明属性is quoted with " which must be escaped when used within the value 如果我通过ANT_OPTS设置它,我不会收到此错误。

1 个答案:

答案 0 :(得分:3)

使用<property>任务定义环境前缀:

<property environment="env"/>

现在,您可以简单地将env.添加到您的环境变量中,并将其视为已定义的Ant属性:

 <property environment="env"/>
 <echo message="My path is &quot;${env.PATH}&quot;"/>