Java 检索ant build.xml文件中的类路径值
我是ant的新手,我写这篇文章是为了检索类路径:Java 检索ant build.xml文件中的类路径值,java,linux,ant,Java,Linux,Ant,我是ant的新手,我写这篇文章是为了检索类路径: <!-- ## ************************************************************************** ## ENVIRONMENT DEFINITION --> <path id="classpath"> <pathelement path="${env.CLASSPATH}" /> </path>
<!--
## **************************************************************************
## ENVIRONMENT DEFINITION
-->
<path id="classpath">
<pathelement path="${env.CLASSPATH}" />
</path>
<property name="extdirs" value="${env.EXTDIRS}" />
我尝试使用pathelement的属性位置,但在Fedora上也不起作用:
<pathelement location="${env.CLASSPATH}" />
Ant可以访问所有内容,因此您可以使用:<echo>
${java.class.path}
${java.ext.dirs}
</echo>
${java.class.path}
${java.ext.dirs}
除此之外,蚂蚁也有
评论后编辑
试用:<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>
类路径1=>${ant.refid:Classpath}
类路径2=>${env.Classpath}
ExtDIRS=>${env.ExtDIRS}
AntFileDirName=>${AntFileDirName}
类路径1和类路径2的输出本质上是相同的,只有很少的
不同之处在于类路径1中的第一个条目是antfile的完全限定路径
-在示例代码段中,表示${ant.file}=${antfiledirname}的dirname,而在类路径2中是“.”。您确定在Fedora帐户上设置了类路径吗?没有任何特定于Fedora的东西会导致此失败。是的,我确定,因为当我使用Gnu MakeFile(使用相同的classpath变量)编译时,它可以工作,它会显示[echo]/usr/java/jdk1.7.0_01/jre/lib/ext:/usr/java/packages/lib/ext这不是我要找的同一个类路径:echo$classpath/opt/jdk1.7.0/jre/lib/rt.jar:/home/amira/workspace/classes
<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>