0

<target name="init">
    <property name="src.dir" value="src"/>
    <property name="build.dir" value="build"/>
    <property name="apidoc.dir" value="apidoc"/>
    <property name="lib.dir" value="lib"/>

    <property name="lib.res" value="resources.jar"/>
    <property name="jar.path" value="${build.dir}/AntLabRun.jar"/>
    <property name="main.class" value="edu.gatech.oad.antlab.pkg1.AntLabMain"/>
    <path id="classpath">
        <fileset dir="${lib.dir}" includes="lib.res"/>
    </path>
</target>


<target name="jar" depends="compile">
    <manifestclasspath property="jar.classpath" jarfile="${jar.path}">
        <classpath refid="classpath"/>
    </manifestclasspath>
    <jar destfile="${jar.path}" basedir="${src.dir}">
    <manifest>
        <attribute name="Main-Class" value="${main.class}"/>
        <attribute name="Class-Path" value="${jar.classpath}" />
    </manifest>
    </jar>
</target>

<target name="clean" depends="init">
    <delete dir="${build.dir}"/>
    <delete dir="${apidoc.dir}"/>
</target>

<target name="run" depends="jar">
    <java jar="${jar.path}" fork="true"/>
</target>

<target name="all">
    <antcall target="init"/> 
    <antcall target="prepare"/>
    <antcall target="compile"/>
    <antcall target="javadoc"/>
    <antcall target="jar"/>
    <antcall target="run"/>
</target>

jar を実行するたびに、このエラーが発生します。何が原因なのかわかりません。他のすべては正常に機能し、グーグルで検索して、この同じ問題に関するいくつかの投稿を見つけましたが、それらのために機能したものは何も機能していないようです.

4

1 に答える 1

0

ターゲットのタグclassname="${main.class}"内に a を追加してみてください。 また、プログラムを実行する場合でも、ライブラリをクラスパスに追加する必要があると思います。javarun

于 2013-07-18T19:04:57.990 に答える