[英]System.out.println doesn't show text in console (IntelliJ)
[英]Java: System.out.println() should write to the console, but it doesn't
我正在尝试编写Java控制台应用程序,代码很简单:
public class ConsoleTest {
public static void main(String[] args) {
System.out.println("test");
}
}
如果我从Eclipse运行这个应用程序,那么我在Eclipse的“控制台”中看到“ test
”,但是如果我将我的应用程序导出为“ Runnable JAR文件 ”并从Windows XP cmd.exe
运行它,那么没有任何内容回显到控制台。
在安全方面,我试图检查System.console()
,它返回null
。
有什么不对?
你是如何在日食之外运行你的程序的?
你应该使用命令行
java -jar yourjar.jar
要么
java -cp yourjar.jar ConsoleTest
如果您偶尔使用javaw
则不会生成控制台输出。 javaw
的STDOUT为null
。 可能这是当你点击你的jar文件时会发生的事情。
您需要从命令行运行jar文件。
如果双击它,您将无法看到在后台运行的命令行操作。 Jar文件通常只在涉及GUI时双击才能运行。
要从命令提示符运行jar文件,只需执行以下操作:
java -jar ConsoleTest.jar
假设您已为java.exe设置环境变量,并且当前目录具有jar文件。
如果这不起作用,则可能不是您的代码的错。 指向Main类的清单文件也可能设置错误。
尝试从命令行将其编译为一个类,然后运行它。 那样有用吗?
javac ConsoleTest.java
java ConsoleTest
有可能你的runnable jar文件没有按预期工作,并且实际上并没有运行你的ConsoleTest类。
就像Hovercraft Full Of Eels编写的那样,使用cmd.exe使用以下命令编译.java文件:
javac ConsoleTest.java
然后这将创建一个.class文件,我们想用这个命令编译它:
java ConsoleTest
然后应该显示“测试”输出。
您必须安装java jdk并将包含文件java.exe的目录的根目录添加到系统的目录中,您将在jdk的安装指南中找到更多信息。
然后使用该命令在控制台中运行该文件
> java file.java
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.