我想创建一个可执行的jar文件,其中包含我用Java编写的小游戏,并使其在任何机器上都可以通过简单的双击像exe文件一样进行游戏。我的问题是,您是否需要先安装Java运行时才能使可执行的jar文件正常工作,还是它也可以在未安装任何Java的计算机上运行?
我想创建一个可执行的jar文件,其中包含我用Java编写的小游戏,并使其在任何机器上都可以通过简单的双击像exe文件一样进行游戏。我的问题是,您是否需要先安装Java运行时才能使可执行的jar文件正常工作,还是它也可以在未安装任何Java的计算机上运行?
不行。然而,客户端不需要JDK,只需要JRE即可。
你可以让你的jar文件声明自己的主类,并让用户像双击exe文件一样正常使用它,或在Windows中创建一个批处理文件。
需要在主机上安装JRE实例。这是因为JAR文件实际上是通过命令行执行的,如(在Windows中):
java -jar ...
当然需要JRE,但不强制要求安装JDK。由于.jar文件的主类在JRE中定义,因此有必要在计算机上安装JRE。我在Windows操作系统上尝试过。
在执行可执行的jar文件之前,是否需要先安装Java运行时环境?
是的,当然需要。要运行Java .jar文件,首先必须至少安装JRE(运行时环境)。 JDK(开发工具包)是JRE的超集,也可以用于运行.jar文件。
它也可以在没有安装Java的计算机上运行吗?
不行,如上所述,至少必须安装JRE。
除非您使用执行预编译(AOT)的工具(与通常的即时编译相对),否则必须在计算机上安装Java运行时环境(JRE)。此类工具可用(例如Excelsior JET),但它们有许多缺点,包括成本和预编译Java应用程序是常规可执行文件,仅在一个操作系统上运行。我见过一些安装程序会检测是否已安装JRE,并在未安装时为用户启动Java安装程序。
实际上,您可以使用几个Java .exe包装器将JRE捆绑在您的exe文件中。以下是其中的一些:JSmooth、Launch4j、Jar2Exe。