使用java -jar运行jar包
1.其实命令比较简单:进入相应的目录后,执行java -jar XXX.jar即可!
2.但是,为什么通过Maven打包或者Eclipse export出来的jar不能运行呢?原因很简单,没指定执行哪个类的main方法,如何指定?配置文件,项目文件夹下有一个META-INF文件夹,META-INF文件夹下有一个MANIFEST.MF文件,只要更改该文件就可以了
3.默认该文件内容是:
Manifest-Version: 1.0
Created-By: 1.4.2(Sun Microsystems Inc.)
将其改成
Manifest-Version: 1.0
Created-By: 1.4.2(Sun Microsystems Inc.)
Main-Class: XXX.XXX.XXX.XXX
注意:
Main-Class后面X部分是包名.类名
Main-Class:后面有个空格,下面还有空的一行
4.改好内容后,怎么将其打成jar包呢?
我试过,直接用winrar打包,然后改后缀名,不行,
以下这种方法可行:
假设你的jar包名为myJar.jar:
(1)先将myJar.jar解压至myJar(在同一层文件夹)
(2)进入myJar文件夹,再进入META-INF文件夹,更改MANIFEST.MF文件,
按照步骤三的操作即可
(3)保存后退到myJar.jar同一层目录,然后执行jar umf myJar/META-INF/MANIFEST.MF myJar.jar
如果没报错,并生成了XXX.tmp文件,就说明执行成功,
打开myJar.jar就可以看到MANIFEST.MF文件已经被改成了相应的需要的文件了
(4)在当前目录执行java -jar myJar.jar即可