创建一个简单的ant工程文件,并且指定jar包的入口可执行类。
假设项目文件结构如下:
+ build.xml
+ src/com/company/product
+ -----------------------/Main.java
+ -----------------------/Function.java
对应的build.xml可以是:
<?xml version="1.0" encoding="UTF-8"?>
<project name="A simple ant project build" default="jar" basedir=".">
<!-- Sets the properties here-->
<property name="src.dir" location="src" />
<property name="build.dir" location="bin" />
<!-- Target for deleting the existing directories-->
<target name="clean">
<delete file="${basedir}/product.jar"/>
<delete dir="${build.dir}" />
</target>
<!-- Target for creating the new directories-->
<target name="makedir">
<mkdir dir="${build.dir}" />
</target>
<!-- Target for compiling the java code-->
<target name="compile" depends="clean, makedir">
<javac includeantruntime="false" srcdir="${src.dir}" destdir="${build.dir}">
</javac>
</target>
<!-- Default target to run all targets-->
<target name="jar" depends="compile">
<jar destfile="${basedir}/product.jar" basedir="${build.dir}">
<include name="**/*.class"/>
<manifest>
<attribute name="Main-Class" value="com.company.product.Main"/>
</manifest>
</jar>
</target>
</project>
然后jar文件build出来之后可以使用下面命令运行:
java -jar product.jar
这里不需要再指定入口类com.company.product.Main了,因为已经被指定在jar包的menifest信息里面了。
网友评论