JDI를 사용하여 실행중인 다른 Java 응용 프로그램을 디버깅하고 있습니다.JDI - IllegalConnectorArgumentsException : 잘못된 인수
내가 작품을 할 무엇 :
실행 Eclipse를 사용하여 두 개의 응용 프로그램. 디버거는 다음 VM 옵션과 함께 시작됩니다 :
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
다른 응용 프로그램은 포트 4000의 소켓에 연결하고, 지역 변수의 값을 얻기 위해 (등, 중단 점) 정상 절차를 따른다.
제대로 작동하고 저에게 그 가치를 제공합니다. 내가 지금하고 싶은 무엇
:
을 대신 두 개의 프로세스를 실행하기 위해 Eclipse를 사용하여, 나는 이클립스에서 하나의 시작, 그리고 Process
는 다음 인수와 함께 또 다른 하나를 시작하는 ProcessBuilder
를 사용 :
String[] args1 = {getJavaDir(),"-cp",classpath,"-Xdebug", "-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000", "processII.Main2"};
ProcessBuilder builder = new ProcessBuilder(args1);
builder.directory(directory);
Process process = builder.start();
프로세스가 성공적으로 시작됩니다. 내가 처음 과정을 통해 그것을 액세스하려고 할 때, 나는 다음과 같은 오류 얻을 : 온라인이 고개를
com.sun.jdi.connect.IllegalConnectorArgumentsException: Argument invalid
, 그리고 예외가 무엇인지에 대한 약간의 정보가있다.
문제의 원인을 파악하는 데 도움이 되었으면합니다.