我是蚂蚁的新手,我写这个来检索类路径:
<!--
## **************************************************************************
## ENVIRONMENT DEFINITION
-->
<path id="classpath">
<pathelement path="${env.CLASSPATH}" />
</path>
<property name="extdirs" value="${env.EXTDIRS}" />
它适用于Ubuntu而不适用于Fedora: 这是我的类路径的值:
echo $CLASSPATH
/opt/jdk1.7.0/jre/lib/rt.jar:/home/amira/workspace/classes
我尝试使用pathelement的属性位置,但它也不适用于Fedora:
<pathelement location="${env.CLASSPATH}" />
答案 0 :(得分:1)
Ant可以访问所有Java properties,因此您可以使用:
<echo>
${java.class.path}
${java.ext.dirs}
</echo>
除此之外,Ant还有predefined properties。
评论后编辑
尝试:
<property environment="env"/>
<path id="classpath">
<pathelement path="${env.CLASSPATH}"/>
</path>
<property name="extdirs" value="${env.EXTDIRS}"/>
<dirname file="${ant.file}" property="antfiledirname"/>
<echo>
Classpath 1 => ${ant.refid:classpath}
Classpath 2 => ${env.CLASSPATH}
ExtDIRS => ${env.EXTDIRS}
AntFileDirName => ${ antfiledirname}
</echo>
Classpath 1和Classpath 2的输出基本相同,只有少量 区别为Classpath 1中的第一个条目是antfile的完整限定路径 - 表示示例代码段中的$ {ant.file} = $ {antfiledirname}的dirname - 而在Classpath 2中它是'。'