我在项目中有以下Ant目标和路径元素。
<project>
.....
<path id="MyProject.classpath" location="${class.path}">
<pathelement location="${output.directory}/ant-junit.jar" />
<pathelement location="${output.directory}/junit.jar" />
<fileset dir="${output.directory}">
<include name="**/*.jar" />
</fileset>
<pathelement location="${class.path}"/> <!-- This did not work -->
<dirset dir="${dest.path}">
</dirset>
</path>
<path id="classpath.test">
<fileset dir="${output.directory}">
<include name="**/*.jar" />
</fileset>
</path>
<target name="test">
<echo>In Test</echo>
<mkdir dir="${junit.output.dir}" />
<junit>
<classpath refid="MyProject.classpath">
</classpath>
<batchtest todir="${junit.output.dir}">
<formatter type="plain" usefile="false"/>
<formatter type="plain" />
<fileset dir="${src.path}">
<include name="**/*Test*.java" />
</fileset>
</batchtest>
</junit>
</target>
....
</project>我有一个属性class.path,指向下面的一堆罐子。我想使用这个class.path (由IDE创建)属性作为到上面junit测试的类路径的类路径,我尝试了一些东西,它没有工作。有人能给我指明正确的方向吗?
<condition property="class.path" value="C:/tools/bea/jdk142_19/jre/lib/rt.jar;C:/tools/bea/jdk142_19/jre/lib/jsse.jar;C:/tools/bea/jdk142_19/jre/lib/jce.jar;C:/tools/bea/jdk142_19/lib/tools.jar;${platformhome.local.directory}/server/lib/knex.jar;${platformhome.local.directory}/common/lib/log4j.jar;${platformhome.local.directory}/server/lib/debugging.jar;${platformhome.local.directory}/javelin/lib/javelin.jar;${platformhome.local.directory}/server/lib/wlw-lang.jar;${platformhome.local.directory}/server/lib/weblogic.jar;${platformhome.local.directory}/common/eval/pointbase/lib/pbserver44.jar;${platformhome.local.directory}/common/eval/pointbase/lib/pbclient44.jar;${platformhome.local.directory}/server/lib/webservices.jar;${platformhome.local.directory}/server/lib/webserviceclient.jar;${platformhome.local.directory}/server/lib/webserviceclient+ssl.jar;${platformhome.local.directory}/server/lib/wli.jar;${platformhome.local.directory}/server/lib/xbean.jar;${platformhome.local.directory}/server/lib/wlxbean.jar;${platformhome.local.directory}/server/lib/xqrl.jar;${platformhome.local.directory}/server/lib/netui/netui-compiler.jar;${app.local.directory}/APP-INF/lib/CommonUtilities.jar;${app.local.directory}/APP-INF/lib/junit.jar;${app.local.directory}/APP-INF/lib/log4j.jar">
<or>
<os family="windows"/>
<os name="SunOS"/>
</or>
</condition> 发布于 2014-07-21 17:30:06
<pathelement location= ...>:location属性指定相对于项目的基本目录(或绝对文件名)的单个文件或目录,而path属性则接受冒号或分号分隔的位置列表。
path属性用于预定义的路径--在任何其他情况下,应该首选具有位置属性的多个元素。
..from 这里
除非有进一步的错误,否则使用<pathelement path="${class.path}" />应该有效。
发布于 2014-07-21 17:05:40
我不明白您如何实现Ant类路径。这是我的,希望能帮到你:
<path id="project_classpath">
<fileset dir="${dir_sandbox_jar_dependencies}" includes="*.jar"/>
<pathelement location="${build.class.dir}"/>
</path>然后我用它
<java classname="some.java.class" failonerror="true" classpathref="project_classpath">
<arg value="hello"/>
</java>classpathref是许多任务的参数,例如javac、java和javadoc。
它也被接受--我认为--作为嵌套元素 in JUnit任务。
https://stackoverflow.com/questions/24870579
复制相似问题