一般都用ide了。今天在命令行里面,试了一下jar
jar cvfm test.jar MANIFEST.MF MyTest.class
其中MANIFEST如下:
Manifest-Version: 1.0
Created-By: 1.5.0_06 (Sun Microsystems Inc.)
Main-Class: MyTest
但是我运行jar的时候却提示找不到ooo.jar 里面的东东
java -cp 'ooo.jar:aaa.jar' -jar test.jar
看来这个参数 ——cp是没有效果的
网上搜了一下
在MANIFEST里面添加了
Class-Path: ooo.jar aaa.jar这么一行 就可以成功运行了。
[size=large][color=red]但是我的问题是 为什么随便打开一个开源的包 根本就没有依赖的包的信息呢????[/color][/size]
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.1
只有这些,但其实这个包依赖了很多包啊??
java -cp 'ooo.jar:aaa.jar' -jar test.jar
这种写法不对吧
一般test.jar存在Main-calss
我们用java -jar test.jar
否则 我们用 java -cp ooo.jar;test.jar;aaa.jar com.bes.Test
来执行,你种写法感觉比较乱,不过我没试过是否可行
json-lib-2.4.jar
又没有说是能够单独执行的
而且依赖的包是在代码执行到需要使用的地方时JAVA才会报错告诉你找不到相关的包
一般部署一个项目时,负责的人就得处理这些依赖的包