今天早上,当我在Windows 7计算机上从命令行执行一个简单的hello world Java应用程序时,响应出现在命令下方。像这样:
java HelloWorld 你好世界
现在相同的命令会弹出一个新窗口并立即消失。我输入了一个System.console()。readLine(“enter to continue”);这看起来像预期的那样。按下后,新窗口关闭。
如何防止这种情况发生? (1.7_21)
额外的清晰度:
代码:
public class HelloWorld {
public static void main() {
System.out.println("Hello World");
}
}
采取的步骤:
我的问题是,“为什么java可执行文件会打开这个java窗口?”在其他机器上,它将输出放在同一个DOS窗口中。
另外注意,Netbeans也不会在输出窗口中显示输出,在这种情况下,它似乎完全丢失了。我可以单步执行程序,但输出不会显示在输出窗口中。
P.S。我不是新手,我已经从命令行运行Java多年了,这才开始发生。 (并且我不知道发生了什么变化,我相信机器从公司安全人员那里得到了某种安全补丁。我无法从他们那里得到改变的东西。)
答案 0 :(得分:1)
当您在Windows中运行命令行可执行文件并完成时,这几乎应该发生。诊断实际情况的最简单方法是打开一个实际的命令提示符窗口(Start->cmd
)并在该窗口中运行该命令。
答案 1 :(得分:0)
安装JDK 8.0.77后,我开始遇到同样的问题。我很肯定新版本与问题无关。我刚刚通过删除' C:\ ProgramData \ Oracle \ Java \ javapath来解决它;'来自PATH环境变量。希望这也适合你(尽管我的答案可能为时已晚)。顺便说一句,我没有遇到过其他工具(Maven,Tomcat,Eclipse等)的问题,我依赖Java配置。
答案 2 :(得分:0)
尝试由管理员运行,它对我有用。