写了一个java程序,通过编译器或者命令行都能正确运行,但是做成jar文件就不能运行了?给分


问题如题,我的jar文件里写了manifest清单的,也指定了主类,结构如下
                     textEditor.jar
                           |_________textEditor
                           |                  |________包括主类在内的全部类文件
                           |_________META-INF |________images//装有jpg图片的文件夹  
                                          |
                                          |________MANIFEST.MF

17 个解决方案

#1


UP

#2


不能运行是什么异常呢?
应该和路径有关系。

#3


象jBuilder,先将指定的应用工程文件打成JAR后,还需Archive Build; 这样才部署完成,可生产.exe 点击运行的

#4


你的步骤是怎样的呢

#5


多调试下
把程序简化后,打包
一步一步,慢慢来啦

#6


我开始是用eclipse导出jar文件,以前写的程序都是这么做的,都能双击运行,这次不知怎么就不行了,这次的程序的唯一的不同就是我在我的包里面(textEditor)导入了一个images文件夹,里面是图片,但是我觉得这个应该不是问题啊。后来我用jar 来生成jar文件还是不行,没有什么异常,就是不能启动程序

#7


使用java -jar xxx.jar运行
可以看到异常信息

#8


异常信息位 Invalid  or corrupt jarfile 相关路径
怎么回事?

#9


一个可执行的 JAR 必须通过 menifest 文件的头引用它所需要的所有其他从属 JAR。如果使用了 -jar 选项,那么环境变量 CLASSPATH 和在命令行中指定的所有类路径都被 JVM 所忽略。

#10


mark,你的jar里引用了其他资源文件吧,必须在manifest里指明,Class-Path: (以空格作为分隔符)

#11


我在manifest里面指明了主类的,在包里(textEditor)有一个装有图片的文件夹。
manifest里还需指明class_path吗?具体怎么写,谢谢:-)

#12


To add classpath to your manifest, here is an example:

Class-Path: commons-beanutils.jar, commons-collections.jar, commons-dbcp.jar, commons-digester.jar, commons-logging.jar, commons-pool.jar, commons-validator.jar, jakarta-oro.jar

But you should be able to just add your jar file to you classpath and then run:

   java <your main class with package name>

#13


学习..

#14


study up on

#15


用Ant吧,说不定是遗漏什么文件

#16


有可能需要的类包没有打进去

#17


这是我的manifest

Manifest-Version: 1.0
Class-Path: jdom.jar activation.jar mail.jar commons-httpclient-2.0.ja
 r log4j-1.2.8.jar mibble-2.2.jar snmp_v3.jar tablelayout.jar mysql-co
 nnector-java-3.0.15-ga-bin.jar j2ee.jar jmxri.jar jmxtools.jar sms.ja
 r ..\classes\
Main-Class: com.ocamar.onmp.NMPServer

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号