Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 导出后,可运行的Jar文件不会运行_Java_Eclipse_Jar_Jogl_Malformedurlexception - Fatal编程技术网

Java 导出后,可运行的Jar文件不会运行

Java 导出后,可运行的Jar文件不会运行,java,eclipse,jar,jogl,malformedurlexception,Java,Eclipse,Jar,Jogl,Malformedurlexception,将我正在制作的游戏应用程序导出为可运行的.jar文件后,我从命令提示符下运行它,结果发现了一些问题。我不得不解决一些问题,比如找不到音频路径,无法读取/写入.txt文件。音频我已经看了,并且能够解决,文件我看了,接近解决它,但在这里发了一篇帖子后,我发现我所缺少的只是文件名开头的一个。现在只剩下一个问题了 当我将其导出为: 将所需库提取到JAR中 这给了我一个例外: Catched FileNotFoundException .... -natives-windows-i586.jar(Syst

将我正在制作的游戏应用程序导出为可运行的
.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系统库[JavaSE-1.8]

订购和出口:

  • CubeSurvivor/src
    填充框
  • JRE系统库[JavaSE-1.8]
    框未填充(已选择框进行尝试)
  • JOGL
    框未填充(在选中框的情况下尝试)
我不明白我做错了什么,从外观上看,似乎包含
JOGL
的项目不会进入
.jar
文件,但我已经确认它是在使用
7-zip
打开时出现的,但我找不到
gluegen-rt.dll
(可能看起来不够好,它有成千上万的文件)。该文件以及其他
.jar
文件位于
JOGL
上的一个文件夹中

可能该文件没有被复制或提取到创建的
.jar
文件中

或者我的构建路径有问题吗?如果有,我应该怎么做

我是否应该将
JOGL
中的所有文件添加到
src

编辑:

我用7-zip提取jar文件以运行文件搜索,我进行了随机搜索(在其数千个文件之后),除了名为lib、JOGL.iml的文件夹和引用库中的文件外,所有文件都没有找到,文件夹本身也没有找到。其他所有文件都没有找到

以下是JOGL的内部外观:


lib、JOGL.iml和引用的库不在jar文件中单独存在。

好的,因此此线程已解决,答案在注释中,因此如果有人遇到类似问题,请务必检查它。我不知道如何结束此线程,我确信版主会看到它

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


您收到了一条关于丢失natives jar的错误消息。您确定它包含在内吗?jogl中有一个名为lib的文件夹,glegen-rt.jar位于该文件夹中,在jar文件上导出后,我找不到该文件夹。我可以从jogl中找到数千个文件,但我似乎找不到该文件夹和文件。我可以添加jogl吗这个项目有一个文件夹lib(glugen-rt.jar/glugen.jar/jogl-all.jar所在的位置)、一个包含所有文档的zip文件jogl-all-docs.zip、一个名为jogl.iml的文件以及参考库(gluegen-rt.jar和jogl-all.jar).lib不是一个src文件夹,它是一个常规文件夹,这与此问题有关吗?不幸的是,我不知道Eclipse。您的项目是否在Eclipse中运行?您是否克隆了jogl并将其添加为依赖项?它在Eclipse上运行得非常好。至于jogl项目,在下载后,我使用将其导入到我的工作区,然后,我制作了game项目,其构建路径如帖子所示。我建议您使用jogamp-fat.jar而不是所有单独的jar,并将您自己的jar与之合并。我建议您在询问有关StackOverflow上的JOGL的问题之前仔细阅读我们的wiki:如果您不尊重我们的本机库布局,GlueGen将不会找到本机库,也不会已提取,Java本身找不到。