如何从我的LIBGDX游戏中制作可执行文件

时间:2012-01-27 04:35:43

标签: android eclipse executable libgdx

我之前从未将程序变成可执行文件,而且我一直在研究如何执行此操作。当我尝试将它放入罐子时一切正常但是当我尝试运行它时没有任何反应。

如何将我的游戏变成可执行文件以便它可以运行(在Windows上,而不是android) 我觉得我没有将它链接到库或其他东西......不确定。 谢谢!

编辑: 我应该添加我得到错误

JAR export finished with warnings. See details for additional information. 
duplicate entry: com/badlogic/gdx/utils/arial-15.fnt 
duplicate entry: com/badlogic/gdx/utils/arial-15.fnt 
duplicate entry: com/badlogic/gdx/utils/arial-15.png 
duplicate entry: com/badlogic/gdx/utils/arial-15.png 
Jar export finished with problems. 
See details for additional information. 

4 个答案:

答案 0 :(得分:7)

您的问题是,当您将eclipse导出用作可执行jar文件时,它不包含您在gdx项目中使用的资源(图形,声音......)。您可以手动执行的操作是复制生成的jar文件旁边的assets文件夹,或者使用您喜欢的zip管理工具将您的assets文件夹包含在jar文件中。

另一种方法是使用同一个eclipse导出向导并选中“另存为ANT脚本”,然后编辑生成的ant文件以包含应用程序所需的所有文件和文件夹。

希望这有帮助

答案 1 :(得分:6)

这是一个老问题,但如果您使用的是新版本的LibGDX和Gradle,则可以使用命令行生成可执行文件。

有几个命令,但这些命令用于打包:

桌面

gradlew desktop:dist

Android(未签名)

gradlew android:assembleRelease

iOS

gradlew ios:createIPA

网络

gradlew html:dist

https://github.com/libgdx/libgdx/wiki/Gradle-on-the-Commandline

了解详情

答案 2 :(得分:5)

我假设您的应用程序是setup as the libgdx wiki page suggests(带有“主项目”和单独的“桌面”和“android”项目,它们共享“主要”项目的来源)。

由于您的应用程序是用Java编写的,因此需要JVM才能在桌面上运行。您必须决定是否要打包它,或者依赖于用户已经安装的JVM。我认为使用Java类文件打包JVM非常复杂,并引发了许多其他问题(并且它变得非常特定于平台)。所以,我相信大多数基于libgdx的游戏都是作为可执行的Jar文件分发的,这意味着用户必须已经拥有Java。 (它适用于Minecraft,所以它对你来说也足够好了。:)

Eclipse使这非常简单:File -> Export ... -> Java -> Executable Jar File。可能需要执行其他步骤才能将应用程序的图像和声音等资源包含到此.jar文件中。 (我的游戏目前“无资产”,因此我对此部分没有任何经验。)

您也可以考虑侧面执行桌面可执行文件,并将游戏打包为applet并在Web浏览器中运行,这样您想要显示它的人几乎不需要“安装”。这是一个walkthrough for making an applet from a libgdx-based game。 (我自己还没有尝试过这个,但我确实有一个基于libgdx的游戏,我打算这样做。)

答案 3 :(得分:1)

如果您正在使用Android Studio,则可以创建自定义配置以在程序中进行分发。

在“运行”下拉列表中,选择“编辑配置”。

点击" +"。选择Gradle。

在该屏幕的右半部分为您的配置命名。

Gradle项目:使用浏览按钮选择桌面应用程序。这看起来像(项目名称):desktop

任务:键入" desktop:dist"

应用。

关闭配置编辑器,然后从下拉列表中选择新配置。点击运行,它应该构建你的项目。

您的新Jar文件应位于(ProjectName)/ desktop / build / libs