解决 Eclipse IDE 中的 java.io.Console 支持问题
使用 Eclipse IDE 的开发人员经常遇到 System.console() 返回的限制尝试管理基于控制台的输入和输出时为 null。这是因为 Eclipse 将程序作为后台进程执行,而不是在具有控制台窗口的传统顶级环境中执行。
解决方案:将程序作为顶级进程启动
虽然不可能强制 Eclipse 将程序作为顶级进程运行,但存在一种解决方法。通过从 Eclipse 环境中删除程序并在 JRE 类路径中设置其构建的类,可以从外部启动执行。
java -cp workspace\p1\bin;workspace\p2\bin foo.Main
使用远程调试器进行逐步调试
要进行逐步调试,请创建 Windows 批处理文件(*.bat) 并从 cmd.exe 控制台启动它。该批处理文件将以调试模式启动 JVM 控制台,从而允许在 Eclipse IDE 中进行外部调试。
1。创建用于外部执行的批处理文件
@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
在控制台中运行此批处理文件以开始调试。
2.配置远程 Java 应用程序调试启动
在 Eclipse 中,创建远程 Java 应用程序调试启动配置:
3.开始调试
此解决方法允许您在 Eclipse 中调试基于控制台的程序,同时保留基本功能,例如逐步调试和变量检查。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3