私は自分のプロジェクトの ant ビルドを作成しました。
myfile.class(r) のような jar ファイルを抽出すると、いくつかの異なるクラス名が表示されました。
このクラス ファイルのサイズは、コンパイルされたクラス ファイルのサイズと同じではありません。
なぜこうなった。jar を実行すると、メソッドが見つからないという例外が発生しました。しかし、私が完全に機能する日食からエクスポートしたjarファイル。
これが私のbuild.xmlファイルです
<path id="master-classpath">
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
</path>
<manifestclasspath property="lib.list" jarfile=".">
<classpath refid="master-classpath" />
</manifestclasspath>
<target name="clean" description="Clean output directories">
<delete dir="${build.dir}"/>
</target>
<target name="build" description="Compile source tree java files">
<echo>copy src files</echo>
<mkdir dir="${copy.dir}"/>
<copy todir="${copy.dir}">
<fileset dir="${src.dir}">
<exclude name="**/*.class"/>
<include name="**/*.java"/>
<include name="**/*.properties"/>
<include name="**/*.MIB"/>
<include name="**/*.java.bak"/>
</fileset>
</copy>
<echo>Compiling the source code</echo>
<echo>Apache Ant java version is ${ant.java.version}</echo>
<mkdir dir="${build.dir}"/>
<javac destdir="${build.dir}" srcdir="${copy.dir}" source="1.6" target="1.6" debug="on">
<classpath refid="master-classpath"/>
</javac>
<copy todir="${build.dir}">
<fileset dir="${src.dir}/src">
<exclude name="**/*.java"/>
<exclude name="**/*.class"/>
<include name="**/*.properties"/>
<include name="**/*.MIB"/>
</fileset>
</copy>
</target>
<target name="jar" depends="build">
<mkdir dir="${jar.dir}"/>
<echo>building jar!</echo>
<jar destfile="${jar.dir}/${ant.project.name}.jar" >
<fileset dir="${build.dir}" >
<include name="**/*.class" />
<include name="**/*.properties" />
<include name="**/*.MIB" />
<include name="**/*.java.bak"/>
<include name="**/*.png"/>
<include name="**/*.jpg"/>
</fileset>
<zipfileset includes="**/**.**" src="${lib.dir}/junit.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/mysql-connector-java-5.0.8-bin.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/NicManager.jar"/>
<zipfileset includes="**/**.**" src="${lib.dir}/log4j-1.2.14.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/snmp4j-1.11.3.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/snmp4j-agent-1.4.3.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/NMSLookAndFeel.jar"/>
<zipfileset includes="**/*.*" src="${lib.dir}/rt.jar"/>
<manifest>
<attribute name="Main-Class" value="com.ushustech.nmsazzist.NMSAzzistApp" />
<attribute name="Class-Path" value="${lib.list}"/>
</manifest>
</jar>
</target>
<target name="main" depends="clean,jar"/>