我把调试好的Swing项目整个,用Eclipse的打包功能,选好主类后生成了一个jar文件。
照理说是一个可执行的jar文件,可是双击后却弹出一个窗口说: A java exception has occurred。
可是我在Eclipse下调试的时候运行的很好,而且整个项目非常干净(没有任何警告)。
但用jar打包就是不能运行,一运行就报上面的错误。不知道大家有没有遇到过这种情况?
照理说是一个可执行的jar文件,可是双击后却弹出一个窗口说: A java exception has occurred。
可是我在Eclipse下调试的时候运行的很好,而且整个项目非常干净(没有任何警告)。
但用jar打包就是不能运行,一运行就报上面的错误。不知道大家有没有遇到过这种情况?
解决方案 »
- iterator输出结果
- 声明自己抛出特定异常类的方法 可以抛出该异常类的任何子类实例,这句话对吗?
- java读取mysql数据库乱码的问题
- 求助,内部类提为外部类出错!
- 关于多线程,如何保持上一次 i 的值?
- println(String s)方法只可以用System.out.来调用?
- 传值问题
- 各位大哥,我在公司用eclipse和myeclipse开发有区别么?哪里有myeclipse的汉化版?多谢!
- applet引用了其它jar包,用ant打包时要怎么处理
- 大家帮忙看一下这段代码的错误出在哪里,里面的两个文件默认已经存在,但却老提示fs1和fs2没有初使化
- jar与jdbc驱动的绑定问题
- JAVA定时器问题???
打包后运行有问题呗你可以通过命令行运行,看看有什么错误信息
其实,我刚才也在努力寻找原因,不经意间我发现一个现象,
就是那个jar文件原先是放在桌面上的,一运行就报错。
但是,当我把它放到一个非桌面的路径,比如c:\或某个文件夹下的时候,
它就可以正常运行。这是怎么回事?
难道jar文件不能在桌面上运行吗?
1 在你的bin下新建个 文件夹 META-INF
2 在这个META-INF 文件夹里新建个文件 MANIFEST.MF
3 这个文件里写:
Manifest-Version: 1.0
Main-Class: 你的主类名
Class-Path: ./lib/batik-awt-util.jar ./lib/batik-bridge.jar ./lib/batik-css.jar
./lib/batik-dom.jar ./lib/batik-ext.jar ./lib/batik-gui-util.jar ./lib/batik-gvt.jar
./lib/batik-parser.jar ./lib/batik-script.jar ./lib/batik-svg-dom.jar
./lib/batik-swing.jar ./lib/batik-transcoder.jar ./lib/batik-util.jar ./lib/batik-xml.jar
./lib/jcommon-1.0.9.jar ./lib/jdom.jar ./lib/jfreechart-1.0.5.jar ./lib/js.jar
./lib/l2fprod-common-all.jar ./lib/swing-layout-1.0.jar
最后一行要空一行
4 开始打包cd to project directory
cd bin
jar cvfm "../MySwing.jar" META-INF\MANIFEST.MF *
cd ..
java -jar MySwing.jar应该可以了,good luck~