当使用 Eclipse IDE 运行利用 java.io.Console 类的 Java 程序时,开发人员可能会遇到System.console() 返回 null 的问题。这是由于 Eclipse 将程序作为后台进程执行,剥夺了它传统的控制台窗口。
要解决这个问题,有两个选项:
您可以直接从 Eclipse 外部的命令行运行编译好的 .class 文件,维护必要的控制台环境。
java -cp workspace\p1\bin;workspace\p2\bin foo.Main
或者,您可以使用远程调试器以及自定义批处理文件 debug.bat,该文件会在调试模式下启动 JVM 控制台。
@ECHO OFF SET A_PORT=8787 SET A_DBG=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=%A_PORT%,server=y,suspend=y java.exe %A_DBG% -cp .\bin Main
配置Eclipse 中的调试启动配置如下:
这允许您在以下位置设置断点并调试应用程序外部运行时的 Eclipse IDE,可访问控制台输入和输出。
有关更多详细信息,请参阅:
以上是如何在 Eclipse IDE 中使用 java.io.Console 类?的详细内容。更多信息请关注PHP中文网其他相关文章!