0

我编写了一个简单的 java 代码,它将使用 nextInt() 和 nextLine() 在命令窗口(对我来说是 eclipse)中从用户那里获取简单的输入。但是,我意识到其他人需要 JRE(我相信?)在他们的计算机上运行生成的可执行 jar 文件。所以我想知道是否有办法通过让应用程序生成一个类似于命令窗口的窗口来解决这个问题,从而与 Eclipse 中的命令窗口具有相同的交互。

因此,如果我要运行 .jar 或 .exe,则会弹出一个简单的窗口,其作用类似于 eclipse 的控制台,显示 System.out.println() 等中的行。

4

2 回答 2

1
  1. 要运行 java 程序,您需要 jre。没有办法解决这个问题。
  2. 如果您需要控制台,没有什么能阻止您从 Windows 命令行运行 java 程序,这将完全按照您的要求进行。
  3. 您仍然需要 JRE。

不幸的是,当开始使用 Eclipse 学习 Java 时,许多人错过了至少开始了解如何从命令行执行相同操作的机会,如果您问我,很高兴知道。

于 2015-03-19T19:15:11.290 回答
0

对于用 Java 编写的程序,它们被编译为 jar 文件,就像您提到的那样,源代码的这些编译版本与许多其他编程语言的不同之处在于它们不包含汇编/机器代码,例如编译的 C程序会有。它们被编译为字节码。这是由 Java 虚拟机执行的特殊代码。这是一个很好的维基百科参考:link

要回答您的问题,是的,其他人需要 JRE(Java 运行时环境),这可以是:

  1. 自己安装(就是你说的)

  2. 与您的 java 应用程序一起打包,提供下载和点击体验。

对于选项 1,假设他们已经安装了它,他们可以通过使用 javaw 执行 jar 文件来简单地运行它,更多信息在这个 先前回答的 SO question

对于选项 2,该过程相当冗长,我将向您指出官方文档以参考:自包含可执行文件部署 java 应用程序

如果您有一个包含第三方库的更复杂的项目等等,请查看这个 SO question

过去,我还发现launch4j是一个非常有用的跨平台包装器,它可以自动执行从 jar 到可执行文件的过程(使用 Swing 制作了一个简单的游戏,它是简单而丑陋的东西),但是尽管如此,用户仍然需要 JRE。:)

希望这可以帮助!

于 2015-03-19T19:26:19.037 回答