我正在使用IntelliJ IDEA远程调试Java CLI程序,调试器正在监听连接.
这适用于第一次调用,但调试器在CLI程序断开连接后停止侦听.我希望调试器继续监听,因为将进行多个CLI调用(按顺序,不是并行),并且只有其中一个将触发我设置的断点.
这是我的客户端调试配置:
-agentlib:jdwp=transport=dt_socket,server=n,address=5005,suspend=y
可以让调试器保持监听吗?
最佳答案
好了,因为CLI程序终止,调试器也会停止.如果您仍希望继续多次运行CLI程序的调试器会话,那么您可以尝试如下,
原文链接:https://www.f2er.com/java/437458.html编写一个包装程序,您可以从中多次调用CLI程序并调试包装程序而不是CLI程序.
像这样的东西,
public class Wrapper {
public static void main(String[] args) {
YourCLIProgram yp = new YourCLIProgram();
// First Invocation
String[] arg1 = { }; // Arguments required for your CLI program
yp.main(arg1);
// Second Invocation
String[] arg2 = { }; // Arguments required for your CLI program
yp.main(arg2);
// Third Invocation
String[] arg3 = { }; // Arguments required for your CLI program
yp.main(arg3);
// Fourth Invocation
String[] arg4 = { }; // Arguments required for your CLI program
yp.main(arg4);
}
}
我希望它有效.