日期:2014-05-20  浏览次数:20810 次

多个class文件问题打包成可执行JAR的问题
我的环境是FC6+JAVA6 U4
当只有一个CALSS文件时,我新建了一个文本文件MANIFEST.MF,内容:
Manifest-Version: 1.0
Main-Class: Main
Created-By: 1.3.1 (Sun Microsystems Inc.)
然后在终端执行:
jar cvfm Main.jar MANIFEST.MF Main.class
生成的Main.jar双击就可以运行。

但我现在有多个class文件:Arg.class, Split.class, Main.class
我也想打包成可以执行的jar文件,运行:
jar cvfm Main.jar MANIFEST.MF Main.class Arg.class Split.class
但是却不行。双击那个Main.jar没有任何反应。
请高手赐教!

------解决方案--------------------
示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中:
jar cvf classes.jar Foo.class Bar.class
示例 2:使用现有的清单文件 "mymanifest" 并
将 foo/ 目录中的所有文件归档到 "classes.jar" 中:
jar cvfm classes.jar mymanifest -C foo/ .
------解决方案--------------------
你的打包方式貌似没有问题 我按照你的格式打了一遍 是可以运行的
可能是你的Manifest文件格式有点小问题
冒号后面注意只留一个空格(根据你贴出来的格式 貌似有三个space)
否则一般会报
Exception in thread "main" java.lang.NoClassDefFoundError: Main
它获得的主类名是" Main"
------解决方案--------------------
exe4j 看看这个东西吧!http://www.ej-technologies.com/products/exe4j/overview.html
------解决方案--------------------
jre是如何都少不了的,无论你如何打包。否则无法运行。

当然,你可以按照一般软件的做法,把jre放到exe文件的下面的子目录里就可以了。
看看jbuilder自己带的jre/jdk就知道了!

记得jre没必要非得安装的哦!