2012-01-02 2 views
2

Java Debug Interface API을 사용하여 작성한 Java 응용 프로그램을 디버깅하기위한 사용자 정의 프로그램을 작성합니다. 나는 같은 코드를 사용하여 필요한 메소드 호출의 시작에 중단 점을 추가 할 수 있어요 : Java 디버그 인터페이스 : 코드의 임의 위치에 중단 점 넣기

ReferenceType classRef = vm.classesByName(className).get(0); 
Method meth = classRef.methodsByName(methodName).get(0); 
BreakpointRequest brF1 = vm.eventRequestManager().createBreakpointRequest(meth.location()); 
brF1.enable(); 

그러나 나는 소스 파일 내에서 임의의 위치에 대한 위치 객체를 얻는 방법 만들어 드릴 수 없습니다.

+0

IDE에서 디버거를 사용하지 않는 이유는 무엇입니까? –

+0

http://docs.oracle.com/javase/6/docs/jdk/api/jpda/jdi/com/sun/jdi/ReferenceType.html#locationsOfLine%28int%29 –

답변

3

소스 파일의 다른 위치에 대해 Location을 검색하는 데는 여러 가지 방법이 있습니다. .

는 E. g, Method이 여러 동작들을 가지고

  • allLineLocations() + 1 과부하
  • locationsOfLine(int line) + 여러 과부하

또한되는 ReferenceType이하는 동작을 갖는다. Location의 사용법을 찾아보십시오.

+0

과부하 란 무엇입니까? – WSS