用java命令运行一个工程的main函数,ant打jar包,并且jar包可以直接运行

1. java -cp 相关

java -cp "[color=red]classes[/color]:lib/log4j-1.2.15.jar:lib/commons-configuration-1.8.jar:lib/commons-lang-2.4.jar:lib/commons-logging-1.1.1.jar:lib/netty-3.5.2.Final.jar:lib/commons-codec-1.4.jar:lib/commons-httpclient-3.1.jar" [color=red]com.xx.xx.XiaoZhang[/color]

注意:
1. 运行这条命令的路径是在classes这个包的上一层,比如WEB-INF
D:\project\xx\WEB-INF 下运行这条命令, WEB-INF下是否lib包的

2. classes是类包的目录,根据实际情况而定,有时候是bin、drop...或者有时候没有classes。
例如WEB-INF下没有classes,就直接是类包,如com.xx.xx....
这时就是java -cp "lib/log4j-1.2.15.jar。。。。。。。。。

3. 这条命令最后红色部分跟的是包路径+类名 如com.xx.xx.XiaoZhang

2. ant打jar包直接运行
[color=red]每个包之间加空格[/color]
<pathconvert property="libs.project" [color=red]pathsep=" "[/color]>
<mapper>
<chainedmapper>
<flattenmapper />
<globmapper from="*" to="lib/*" />
</chainedmapper>
</mapper>
<path>
<fileset dir="${lib.dir}">
<include name="*.jar" />
</fileset>
</path>
</pathconvert>


<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${build.dir}">
<manifest>
<attribute name="[color=red]Main-Class[/color]" value="com.cup.tsm.simulator.phoneclient.gui.main.Start" />
<attribute name="[color=red]Class-Path[/color]" value="${libs.project}" />
</manifest>
</jar>
</target>

生成的文件可以在META-INF的[color=red]MANIFEST.MF[/color]下看到
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值