用jar命令将java class文件打包以及编写方便执行jar文件的批处理文件

1.jar文件打包
假设需要打包的文件如下:
classes/com/albertsong/MyApp.class
classes/com/albertsong/Aaaa.class
classes/com/albertsong/util/Bbbb.class
(其中MyApp包含main函数)
建一个mymanifest.mf 文件,内容如下:
Main-Class: com.albertsong.MyApp


建一个myjar.bat文件,内容如下:
set JAVA_HOME=C:/jsdk1.5.0_09
set PATH=%JAVA_HOME%/bin
set CLASSPATH=%JAVA_HOME%/lib/tools.jar;
jar cvfm MyApp.jar mymanifest.mf  -C classes .

这两个文件都放到和classes同一个目录,即目录结构象下面一样
MyApp/classes/com/albertsong/MyApp.class
MyApp/classes/com/albertsong/Aaaa.class
MyApp/classes/com/albertsong/util/Bbbb.class
MyApp/mymanifest.mf
MyApp/myjar.bat
然后点myjar.bat这个文件执行就可以了:)

2.执行jar文件
建一个目录MyApp/release。
将生成的MyApp.jar复制到这个目录。
在这个目录里新建一个批处理文件run.bat,内容如下:
set JAVA_HOME=C:/jsdk1.5.0_09
set PATH=%JAVA_HOME%/bin
set CLASSPATH=%JAVA_HOME%/lib/tools.jar;
javaw -jar MyApp.jar

3.其它
   1)jar cvfm MyApp.jar mymanifest.mf  -C classes .
      这行命令,最后的. 一定不能掉jar命令给出的帮助的例子是
       jar cvfm classes.jar mymanifest -C foo/ .
      但是在windows下应该改成
      jar cvfm classes.jar mymanifest -C foo/ .
      或者
     jar cvfm classes.jar mymanifest -C foo .
   2)如果应用程序比较大,可能会用到其它的库,这时可以在release目录下建一个lib
     然后在run.bat的CLASSPATH中添加用到的库。
   set CLASSPATH=%JAVA_HOME%/lib/tools.jar;lib/ccc.jar;lib/ddd.jar;
    3)如果要指定java程序使用的内存,这样
    javaw -ms100m -mx256m -jar MyApp.jar
    上面指定了使用最小100M最大256M内存。
    4)如果main函数要带参数
    javaw -ms100m -mx256m -jar MyApp.jar  arg1 arg2
    5)如果不能在控制台看到有关信息,可以用java来执行jar
      java -ms100m -mx256m -jar MyApp.jar  arg1 arg2
     javaw在后台执行。
    6)如果bat文件一闪而过,看不到输出,可以在文件最后一行加上pause,最好的是通过cmd.exe来运行run.bat

后记:
    老早以前写过一个,后来丢失了,今天因为忘了点号和反斜杠的问题,又浪费不少时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值