如何构建/部署Java程序,以便任何人都可以在没有IDE或命令行的情况下打开它?

如何构建/部署Java程序,以便任何人都可以在没有IDE或命令行的情况下打开它?,java,ide,Java,Ide,我刚刚用Java构建了一个游戏,我想让它可以在任何其他计算机上打开,而无需使用IDE或命令行之类的东西。基本上,我希望它像那些你从互联网上下载并开始玩的电脑游戏一样 我很抱歉,如果这是一个愚蠢的问题(或一个不可能的问题),但英语是我的第二语言,我不知道任何其他方式来表达它。基本上,我已经非常擅长制作电子游戏了,我的游戏也快玩完了,但我不知道如何制作,这样游戏就可以在没有IDE的情况下运行了。也就是说,我希望我的弟弟能够双击一个图标,这将导致游戏启动 现在,从逻辑上讲,我认为无论游戏运行在哪台计算

我刚刚用Java构建了一个游戏,我想让它可以在任何其他计算机上打开,而无需使用IDE或命令行之类的东西。基本上,我希望它像那些你从互联网上下载并开始玩的电脑游戏一样

我很抱歉,如果这是一个愚蠢的问题(或一个不可能的问题),但英语是我的第二语言,我不知道任何其他方式来表达它。基本上,我已经非常擅长制作电子游戏了,我的游戏也快玩完了,但我不知道如何制作,这样游戏就可以在没有IDE的情况下运行了。也就是说,我希望我的弟弟能够双击一个图标,这将导致游戏启动

现在,从逻辑上讲,我认为无论游戏运行在哪台计算机上,都需要下载Java(比如JDK)或其他东西,我同意这一点。我只想给不会说英语或不懂英语的人一个简单的图标,让他们双击并玩游戏

如果没有一些行业级的开发者,这是不可能的,请让我知道,因为我知道一些更大的游戏使用他们自己的语言版本来制作游戏。我只是想知道像我这样的人是否有可能做到这一点,如果有,如何做到。谢谢你抽出时间

您需要构建。如果您安装了Java运行时,双击它通常只会启动程序

注意:对于这个解决方案,您必须将所有第三方库打包到您的jar中,这样您就有了一个文件。但一般来说,这是最简单的解决方案

另一种方法是通过以下方式提供该程序。在这个场景中,您可以单击超链接,您安装的JRE将下载您的程序和所有打包的库,并在本地启动。优点是每次有人运行您的程序时,您的程序更新都会被识别和下载。缺点是您必须自己托管Web开始文件。

您正在寻找一个新的主机。当您创建jar时,您使用一个说明主类是什么的清单文件(使用
main
方法的那个)。看起来是这样的:

例如,假设您的游戏是在包
myniftygame
中实现的,并且具有
main
的类是
GameMain

清单文件(这里我称之为
manifest.txt
)是:

Main-Class: myniftygame.GameMain (该斜杠将是Windows上的反斜杠。)


然后,在任何安装了JRE的现代操作系统中,双击
.jar
文件或使其成为快捷方式的目标等,将使运行时打开jar,查看清单,并调用
myniftygame.GameMain.main
方法。

创建一个可运行的jar,或者更好地使用类似的可执行包装器。可执行包装器确实提供了标准windows Installer之类的功能,如果尚未安装,它会提示您安装JDK/JRE,或者您甚至可以捆绑一个JRE。

如果您想创建一个可执行Jar,请看一下前面的问题,它可能会有所帮助。你们应该检查一下罐子。它们通常用于您想要的。在Windows上?有,它甚至有一个。对于其他平台,您需要创建一个Über Jar,并希望
.Jar
与Java关联。“基本上,我希望它与您从internet下载并开始玩的电脑游戏一样。”部署Java桌面应用程序的最佳方法是使用。至于你现在删除的问题。。“它应该跳过do/while循环、exit循环、exit programLoop(),从而退出main并结束程序。”EDT仍将运行。再次感谢Andrew,我必须对EDT进行一些研究 jar cfm MyNiftyGame.jar manifest.txt myniftygame/*.class