我将执行程序和依赖包添加到eclipse后都能执行
但是用eclipse打包成jar包后,除了主类的包能运行,所有打包进去后的jar包都不能运行
请问该如何解决?
我打包后的jar包的目录结构如下
META-INF
-MANIFEST.MF
lib
-所有依赖包
com
-主类包
.project
.classpath
MANIFEST.MF的内容如下
Manifest-Version: 1.0
Main-Class: com.time.main.Run
classpath的内容就是跟eclipse中的一样的
如下
<?xml version="1.0" encoding="UTF-8"?>
我该如何更改?
[quote]所有打包进去后的jar包都不能运行
请问该如何解决? [/quote]
可以把Jar包打到War包里,但jar包不能打到Jar包里去。
将你所要运行的程序按你上述的“MANIFEST.MF”文件打包(不要包括程序依赖的Jar包)。假设打包后名为A.jar
然后整理成如下目录结构
A.jar
lib
-commons-attributes-api.jar
-commons-beanutils.jar
-commons-codec.jar
-commons-codec-1.3.jar
-commons-collections.jar
.
.
.
将所有依赖包都放入Lib文件夹中,如果不出意外的话,双击A.jar,你的程序就可以运行了。
Eclipse有插件可以实现把所有用到的JAR包都打进去,这个你再搜一下吧。我也记不得了,以前学习的时候用过。
建议用ant来打包,很容易,eclipse自身就支持,只需要一个build.xml就可.