导出后,Runnable Jar文件不会运行

时间:2017-01-25 16:58:10

标签: java eclipse jar jogl malformedurlexception

导出我正在制作的游戏应用程序作为可运行的.jar文件后,我从命令提示符运行它只是为了找到一些问题。我不得不解决一些问题,因为没有找到音频路径,也无法读取/写入.txt文件。音频我看了,并且能够解决,我看到的文件和接近解决它的文件但是在这里发帖后我在文件名的开头学到了我所缺少的.。现在只剩下一个问题了。

当我用以下内容导出时:

  

将所需的库提取到JAR

它给了我这个例外:

Catched FileNotFoundException .... -natives-windows-i586.jar(System couldnt locate especified file) ...

Exception in thread "main" java.lang.UnsatisfiedlinkError: Cant load library: ...\gluegen-rt.dll

当我用以下内容导出时:

  

将所需的库打包到生成的JAR`

它说:

Catched MalformedURLException: Could not open Inputstream for URL: 'rsrc:glugen-rt-natives-windows-i586.jar', ....

Exception in thread "main" java.lang.reflect.invocationTargetException

Caused by: java.lang.UnsatisfiedlinkError: Cant load library: ...\gluegen-rt.dll

构建路径如下所示:

  

来源: CubeSurvivor/src

     

项目: JOGL (其中glugen-rt.dll是此项目,因为它包含与图形相关的所有内容,因此需要此项目)

     

图书馆: JRE System Library[JavaSE-1.8]

     

订单和导出:

     
      
  • CubeSurvivor/src已装箱
  •   
  • JRE System Library[JavaSE-1.8]框未填写(已选中框已尝试)
  •   
  • JOGL框未填写(已选中框已尝试)
  •   

我不明白我做错了什么,从它的外观来看,似乎包含JOGL的项目不会转到.jar文件,但我已经确认它是在使用7-zip打开时,我找不到gluegen-rt.dll(可能看起来不够好,成千上万的文件)。该文件以及其他.jar文件位于JOGL上的文件夹内。

也许这个文件没有被复制或提取到创建的.jar文件中?

或者我的构建路径有问题吗?如果是这样,我该怎么办?

我应该将JOGL中的所有文件添加到src吗?

编辑:

我用7-zip解压缩jar文件来运行文件搜索,我随机搜索(在所有数千个文件之后)和除了名为lib,JOGL.iml和引用库的文件夹之外的所有文件,都在JOGL内部,没有找到,文件夹本身没有找到。其他一切都是。

看看JOGL的内部是什么样的:

JOGL Project View

lib,JOGL.iml和引用的库显然不在jar文件中。

1 个答案:

答案 0 :(得分:2)

好的,所以这个帖子已经解决,答案在评论中,所以如果有人遇到类似的问题,一定要检查一下。我不知道如何让这个线程结束,我确定主持人会看到它。

所以,我只是想感谢你们所有人的宝贵帮助,抱歉,毕竟我的错误是没有正确使用JOGL。这个链接可能在将来帮助其他人,所以我在这里发布它。

http://jogamp.org/wiki/index.php/JogAmp_JAR_File_Handling#Eclipse