Jar包那些事儿(二)

2014-11-24 11:36:12 · 作者: · 浏览: 2
c -d . *.java
下一步,打包:
[plain]
D:\workspace\Java\test-jar\src>jar -cvf hi.jar linc/test/*.class linc/util/*.cla
ss
标明清单(manifest)
增加:linc/test/A.class(读入= 189) (写出= 161)(压缩了 14%)
增加:linc/test/B.class(读入= 189) (写出= 161)(压缩了 14%)
增加:linc/test/C.class(读入= 189) (写出= 162)(压缩了 14%)
增加:linc/test/D.class(读入= 189) (写出= 162)(压缩了 14%)
增加:linc/test/Test.class(读入= 630) (写出= 456)(压缩了 27%)
增加:linc/util/Log.class(读入= 640) (写出= 375)(压缩了 41%)
增加:linc/util/Print.class(读入= 684) (写出= 435)(压缩了 36%)
可以看到,这次打包与做框架时的jar包是一样,那么运行一下:
[sql]
D:\workspace\Java\test-jar\src>java -jar hi.jar
Failed to load Main-Class manifest attribute from
hi.jar
运行失败了,原因是我们没有指定Main-Class在MANIFEST.MF中。
在当前路径新建一个无后缀的文件,如list,加入下面信息:
[plain]
Main-Class: linc.test.Test
冒号后面有空格,结尾要回车。
下面重新打包,加入m参数:
[sql]
D:\workspace\Java\test-jar\src>jar -cvfm hi2.jar list linc/test/*.class linc/uti
l/*.class
标明清单(manifest)
增加:linc/test/A.class(读入= 189) (写出= 161)(压缩了 14%)
增加:linc/test/B.class(读入= 189) (写出= 161)(压缩了 14%)
增加:linc/test/C.class(读入= 189) (写出= 162)(压缩了 14%)
增加:linc/test/D.class(读入= 189) (写出= 162)(压缩了 14%)
增加:linc/test/Test.class(读入= 630) (写出= 456)(压缩了 27%)
增加:linc/util/Log.class(读入= 640) (写出= 375)(压缩了 41%)
增加:linc/util/Print.class(读入= 684) (写出= 435)(压缩了 36%)
先用命令行运行测试:
[plain]
D:\workspace\Java\test-jar\src>java -jar hi2.jar
Info:Hello world!
linc:I am Linc!
linc:I am Linc!
成功,窗口也弹出。
如果双击运行后不好用,那么就写个bat文件吧。
run.bat
[sql]
java -jar hi2.jar
双击run.bat后,程序顺利运行。