Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.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
制作独立的javaexe文件_Java_Camera_Libgdx - Fatal编程技术网

制作独立的javaexe文件

制作独立的javaexe文件,java,camera,libgdx,Java,Camera,Libgdx,我目前是一所高中的学生,我为一个名为FBLA的俱乐部举办了一场游戏编程比赛。我有一些关于比赛的问题,所以我给他们发了电子邮件 我早些时候在计算机科学堆栈交换上发表了一篇文章,你可以在那里查看 在收到这个问题的反馈后,有人评论说我应该在这个网站上发布我的下一个问题。 我的问题是,我如何才能用本机库打包一个JavaJAR文件,然后用它创建一个EXE,这样它就可以独立运行了 在我的理论中,我必须创建jar,当一个人在他们的机器上安装java时,将所需的本机文件放入jar文件中,然后我可以使用一个程序

我目前是一所高中的学生,我为一个名为FBLA的俱乐部举办了一场游戏编程比赛。我有一些关于比赛的问题,所以我给他们发了电子邮件

我早些时候在计算机科学堆栈交换上发表了一篇文章,你可以在那里查看

在收到这个问题的反馈后,有人评论说我应该在这个网站上发布我的下一个问题。
我的问题是,我如何才能用本机库打包一个JavaJAR文件,然后用它创建一个EXE,这样它就可以独立运行了

在我的理论中,我必须创建jar,当一个人在他们的机器上安装java时,将所需的本机文件放入jar文件中,然后我可以使用一个程序,如FatJar或JSmooth

如果我错了,或者我怎么能对JAR的运行方式有更多的了解,这会有很大的帮助。
更新日期:2014年11月8日 我终于又开始玩它了,我下载了Launch4j。我对它进行了设置并完成了所有操作,我制作了一个可执行文件,其中包含了java的所有核心本机文件。我卸载了所有处理java的程序,当我运行它时,它仍然需要java

再次说明我需要做什么:

需要做的是,即使法官的计算机上没有安装任何版本的Java,可执行文件也能够运行。

我建议您使用launch4j

我在一些较大的项目中使用过它,效果非常好


它可以将jar、依赖项甚至JRE封装到windows的可执行文件中。它有一个GUI,或者您可以从命令行运行。

由libGDX团队创建的Checkout Packr:

要使您的jar可执行,您可以在jar的清单文件中指定应用程序的主类、它可能需要的任何额外jar文件等:

Main-Class: MyAppMain
Class-Path: MyLib.jar
jar cvfm MyApp.jar MyApp.mf *.class *.gif
然后使用Java SDK中的jar实用程序打包类和资源文件,并指定m选项和清单文件的名称:

Main-Class: MyAppMain
Class-Path: MyLib.jar
jar cvfm MyApp.jar MyApp.mf *.class *.gif
这将导致创建
MyApp.jar
。现在,如果你打字

java -jar MyApp.jar
Java启动器将从
MyApp.jar
读取清单,将该文件和
MyLib.jar
放在类路径上,并从类
MyAppMain
调用main方法

现在,如果您的Java应用程序需要本机库,您还需要指定指向包含以下内容的目录的
Java.library.path
属性:

java -Djava.library.path=.\bin -jar MyApp.jar

有关更多信息和其他解决方案,请参阅。

我已经有一段时间没有处理过这个问题了,最近才处理过。我下载了Launch4j,运行了所有的程序。我从我的计算机上卸载了java的每一部分来测试一个简单的应用程序(只打开一个JFrame),我在可执行文件中看到了我java目录中的所有文件,但它仍然需要java版本,我是否做错了什么?我记得在没有嵌入JVM的情况下,它在做类似的事情时遇到了一些问题,它必须处理最小/最大java版本配置值。将min指定为我的版本,将max指定为假设的java9可以解决这个问题。不确定这是否与您看到的问题相同,但如果您没有指定最小和最大版本,我会尝试。