按照网上说的方法,我试了,就是在 MANIFEST.MF文件中添加classPath属性 ,但这需要在jar包的同一目录下添加lib文件,放第三 方的jar包,这样,在其他应用中 使用该jar包很不方便,之后,我又使用了fatjar进行打jar包,但生成的jar包第三方是包括了,而且使用 Java -jar 还可以运行,但在项目中无法调用jar包中的方法,很是郁闷,该如何生成jar包
普通的jar包是拿来给其他项目依赖使用的,打jar包是不需要把依赖的第三方jar包包含在内的.一般是在运行java命令的时候添加上class path:
`
java -cp "Test.jar;lib/*" my.package.MainClass
`
这样lib目录下的所有jar都添加了(好像jdk1.6以后才可以用*号的).
另外,如果想打一个可运行的jar包,并且把所有的依赖包全部包含在内的话,eclipse有三个选项:
Extract required libraries into JAR:
将所有用到的class文件(包括你自己写的和第三方包里面的class文件),打成一个jar包.Package required libraries into JAR:
将你的class文件打成一个jar包,把第三方jar包原封不动的打进这个jar包里面(也就是说,第三方jar包class文件需要解压两次才能看到).这种方式下,第三方jar包对jvm不可见,eclipse通过特殊方式访问.Copy required libraries into sub folder next to JAR: 将你的class
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。