所以我写了一个 ant build.xml 文件,我从两个 Java 程序中获取类文件,一个扩展另一个,将它们打包成两个单独的 jar 文件,然后启动它们。
<java classname="Main">
<classpath>
<pathelement location="${mainDir}"/>
<pathelement path="${Main-Class}"/>
</classpath>
</java>
每当我调用 ant 时,它都会说找不到“Main”。如果需要,我可以发布其余的 build.xml 文件,但这只是我感到困惑的部分。我很确定我的类名是正确的,但我最大的问题是弄清楚位置和路径的含义。现在我只有虚拟变量。
编辑:这是整个文件。
<?xml version="1.0"?>
<project default="dist" name="webscarab">
<description>Class</description>
<property name="ClassFiles" location="..\Simple\trunk\dev\Class\bin\" />
<property name="mainClassFiles" location="..\Simple\trunk\dev\main\build\" />
<property name="buildDir" location=".\build" />
<property name="distDir" location=".\dist" />
<property name="mainDir" location="..\Simple\trunk\dev\webscarab\src\" />
<target name="init">
<tstamp/>
<mkdir dir="${buildDir}"/>
<mkdir dir="${distDir}"/>
</target>
<target name="dist" depends="init">
<jar destfile="${distDir}/package${DSTAMP}.jar" basedir="${ ClassFiles}"/>
<jar destfile="${distDir}/package-web-${DSTAMP}.jar" basedir="${mainClassFiles}"/>
<java classname="Main">
<classpath>
<pathelement location="${mainDir}"/>
<pathelement path="${Main-Class}"/>
</classpath>
</java>
</target>
</project>
编辑 2:我应该提到所有内容都已编译,并且我拥有所有 .class 文件。这不是我需要在 Ant 文件中做的事情。