为控制台制作一个jar文件

我有一个没有GUI的程序,我使用控制台! 所以首先我从控制台的用户那里读取一行

BufferedReader userReader = new BufferedReader(new InputStreamReader(System.in));

然后我会在控制台中为用户写一个答案!

的System.out.println( “服务器:” +输出);

我想为它创建一个jar文件! 但是如何在不使用GUI的情况下在jar文件中显示我的控制台? 请帮我谢谢。

您需要从CLI(命令行)运行您的jar文件。 喜欢:

java -jar yourJar.jar pause 

如果你想强迫这个,有不同的方法来做到这一点:

  • CMD的快捷方式文件和jar作为参数
  • 使用上面的代码运行jar的批处理文件
  • 手动从批处理文件中调用它(如上所述)

首先,没有“控制台JAR”和“GUI JAR”这样的东西。 但是,有不同的VM启动器用于控制台和GUI模式。 或者,更确切地说,有不同的发射器,其中一个具有控制台,另一个没有,但是如果你的程序有一个,它们都能够显示GUI。 这些启动器被命名为“java”(控制台版本)和javaw(没有控制台版本)。

要使用特定启动程序启动JAR,请使用“javaw -jar JARFILE”或“java -jar JARFILE”命令。 如果在执行之前没有打开控制台就启动控制台版本,则控制台会在程序完成后立即关闭。 这意味着如果你想看到你的输出,你应该不要太快终止你的程序,或者只是先启动控制台(Win + R,“cmd”,回车)并从控制台运行“java -jar …”。

另一种方法是转到Windows控制面板并将与JAR扩展相关联的程序从“javaw”更改为“java”。 这将使系统中的每个JAR都使用控制台。 对于具有GUI的JAR,这只会带来打开另一个窗口的不便。 有时它是你想要的,有时不是。

无论GUI与否,制作可执行jar都是一样的。 您需要在META-INF/MANIFEST.MF指定Main-Class 。 看到这里 和这里

当然,如果你想在控制台上启动一些东西,只需打开控制台并使用以下命令: java -jar archive.jar (符合上述要求)

然后我建议使用java.io.Console读取和写入控制台。

对于控制台以及基于GUI的应用程序,创建JAR文件的过程是相同的。 你肯定没有看到你的JAR的输出。 只需从控制台执行它,您就会看到输出。 为了便于使用,您可以制作批处理文件(MS-Windows)来运行JAR。