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

为什么在Eclipse中可以运行的程序,导出后则无法运行了呢?
1、如题,我通过Eclipse导出一个项目,但是无法运行,而在Eclipse中却可以正常运行,而且我的项目是无警告,我这个项目是一个登陆SQL的登录窗口,其中JRE系统库中,导入过sqljdbc和这个有关系吗?
2、还有一点很奇怪,我下了一个fatjar,版本分别是0.0.24、0.0.9但是奇怪的是,在项目右键中能看到Build Fat jar但是点了后就是没反应,实在想不通了!我用的是Vista系统

------解决方案--------------------
错误呢?啥都没有吗?

一般来说,在集成环境运行正常,单独运行不正常,都是缺少了某些类库,比如jar或者class,或者他们的版本不对。

------解决方案--------------------
先导出jar 用fat jar是可以的
再把jar搞成exe 用exe4j 

试试看哇 楼主
------解决方案--------------------
如果你往JRE主目录中导入过东西,那么你导出的项目,在你当前这台机器上应该也能正常执行的。
换了其他的机器,就不行了。除非你把导入的那个Jar再copy一份过来。
这样太麻烦了,完全没有跨平台的优势了,所以建议你将驱动放到工程的lib文件夹下,而不是copy到jre目录里。
------解决方案--------------------
估计是导出后没有指定入口mian程序,是否在MANIFEST.MF指定了呢?
------解决方案--------------------
在命令行运行

java -jar myFat.jar

看看错误信息吧!
------解决方案--------------------
真想帮你,可实在是无处下手!
------解决方案--------------------
路径问题,Eclipse构建路径时帮你配置了classpath,脱离了Eclipse当然出错了。
你可以在MAINIFEST.MF文件里配置classpath,Class-Path: lib\sqljdbc.jar(假设你的jar文件和lib同在一个目录,如果jar在bin里则Class-Path: ..\lib\sqljdbc.jar)。
如果在命令行中运行可以用java -classpath .\lib\sqljdbc.jar
------解决方案--------------------
已经说过了,构建路径后再导出你还是不能直接运行,Eclipse不包办classpath问题,需要你手动改MAINIFEST.MF 在里面添加一个Class-Path的属性,并且设置为你的的lib里的jdbc
------解决方案--------------------
探讨
回复楼上的朋友,我解压后修改了,但是我通过命令 jar -cvm MyProgram.jar MyProgram\  为什么不能创建jar文件呢?jar -cvf ....倒是可以,但是目录就不对了

------解决方案--------------------
莫非是jabc的jar包没有放到项目的lib库里面?