9

我以前从未将程序变成可执行文件,而且我一直在研究如何做到这一点已经有一段时间了。当我尝试将其放入 jar 中时,一切正常,但是当我尝试运行它时,没有任何反应。

如何将我的游戏制作成可执行文件以便它可以运行(在 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

4 回答 4

7

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

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

希望这可以帮助

于 2012-04-06T00:35:19.980 回答
6

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

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

桌面

gradlew desktop:dist

安卓(未签名)

gradlew android:assembleRelease

iOS

gradlew ios:createIPA

网络

gradlew html:dist

在https://github.com/libgdx/libgdx/wiki/Gradle-on-the-Commandline阅读更多内容

于 2014-09-02T06:42:13.933 回答
5

我假设您的应用程序已按照 libgdx wiki 页面的建议进行设置(具有“主项目”和单独的“桌面”和“安卓”项目,它们共享来自“主”项目的源)。

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

Eclipse 让这变得非常简单:File -> Export ... -> Java -> Executable Jar File. 可能需要额外的步骤才能将应用的图像和声音等资产包含到此 .jar 文件中。(我的游戏目前是“无资产”,所以我对这部分没有任何经验。)

您也可以考虑避开桌面可执行文件,将您的游戏打包为小程序并在 Web 浏览器中运行,这样您想要向其展示的人几乎不需要“安装”。这是从基于 libgdx 的游戏制作小程序的演练。(我自己还没有真正尝试过这个,但我确实有一个基于 libgdx 的游戏,我打算为此做这个。)

于 2012-01-27T05:54:44.153 回答
1

如果您使用的是 Android Studio,则可以创建自定义配置以从程序中分发。

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

点击“+”。选择 Gradle。

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

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

任务:输入“桌面:dist”

申请。

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

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

于 2016-02-14T04:07:27.483 回答