Ant打jar包指定MainClass

一般用ant打jar的时候不用指定程序的入口!这个jar一般是给其他app引用的。

但是如果该jar就是程序的启动jar。例如:

java -jar abc.jar

 这个时候需要指定jar的入口类!也就是指定用哪个类的main方法为入口!否则会报错!

Failed to load Main-Class manifest attribute from abc.jar

方法如下:

在创建jar的target里面添加manifest标签!

<jar destfile="${dist.dir}/ant_jar.jar" basedir="${classes.dir}">
                <exclude name="**/*Test.*"/>
                <exclude name="**/Test*.*"/>
                <manifest>
                    <attribute name="Main-Class" value="com.ant.action.Action"/>
                    <attribute name="Class-Path" value="junit.jar"/>
                </manifest>
            </jar>

用winRar打开jar文件,打开MANIFEST.MF文件,内容如下:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 20.0-b11 (Sun Microsystems Inc.)
Main-Class: com.ant.action.Action
Class-Path: junit.jar

猜你喜欢

转载自pengyan5945.iteye.com/blog/1562387