이클립스에서 당신의 치료를 받으시나요?
행이 된 후 명령 포인터가 호출 함수로 돌아 가기 전에 메소드의 반환 값을 볼 수 있습니까?
수정할 수없는 코드를 디버깅하고 있습니다 (읽기 : 타사 라이브러리를 다시 컴파일하지 않으) , 때로는 소스가없는 코드로 점프하거나 반환 표현식에 나를 방해하는 부작용이 있습니다 . 표시 탭 에서 사용할 수 있습니다.
사용되지 않은 값은 복합 명령문에서 사용되지 않은 변수 보기에는 값이 표시되지 않습니다.
업데이트 : 문에 부작용이 있기 때문에 식 뷰어를 사용할 수 없습니다.
이 기능은 Eclipse bug 40912 에서 Eclipse 버전 4.7 M2에 추가되었습니다 .
그것을 사용하십시오 :
return
문을 건너 뛰어 사용합니다 ( "Step Over"또는 "Step Return").- 이제 변수보기의 첫 번째 줄에 "[statement xxx] returned :"와 같이 return 문의 결과가 표시됩니다.
자세한 내용은 Eclipse Project Oxygen (4.7) M2-New and Noteworthy 를 참조하십시오.
이것에 대한 정말 좋은 지름길을 찾았습니다. 값을 반환하는 저장을 선택하고
Ctrl + Shift + D
이 반품 문의 값을 표시합니다. 사용하지 않는 경우에는 매우 유용합니다.
도움이 되셨기를 바랍니다.
참고 : 라이브러리에서 의무적으로 작동합니다. 웹 개발자 용 Eclipse Java EE IDE에서 이를 테스트했습니다 . 버전 : Juno 서비스 릴리스 1
이것은 실제로 Eclipse의 오랜 버그이며 IDE의 첫 번째 날부터 거슬러 올라갑니다 : https://bugs.eclipse.org/bugs/show_bug.cgi?id=40912
이것이 제가 항상 다음과 같은 방법 패턴을 고수하는 이유입니다.
MyReturnedType foo() {
MyReturnedType result = null;
// do your stuff, modify the result or not
return result;
}
내 규칙 :
- 메소드의 끝에 만 반환 문이 하나만 있습니다 (다음에 마지막으로 허용됨).
- 항상 시작하여 반환 된 값을 보유하는 로컬 호출 결과가 있습니다.
당연히 가장 사소한 게터는 면제됩니다.
이 질문에 대한 답도 궁금합니다.
과거에는 이와 같은 클래스 라이브러리를 다룰 때 클래스에서 클래스를 생성하는 래퍼 클래스 또는 클래스를 만들고 래퍼 / 클래스에서 클래스를 수행했습니다. 그래도 추가 작업이 필요합니다.
"이제 메소드에서 리턴 할 때 메소드에서 변수보기에 이전에 호출의 리턴 값이 표시됩니다."[1]
어려운 것. 내 경험, 이클립스의 외부, 당신은 반환 값을 참조해야하는 경우 반환 문이 간단하게 기능에서 지역 변수에 할당하는 return varname;
것이 좋습니다 것입니다 하지 return(some * expression || other);
. 끔찍한 언어라고 말할 수 있습니다. 그래서 나는 당신에게 좋은 대답을 가지고 있지 않습니다. 당신은 당신의 요구 사항을 아마도 재고해야 할 것입니다.
return 문에 따라 반환되는 메뉴를 강조 표시 할 수 있고 오른쪽 클릭 메뉴에서 "표현식 평가"와 같은 항목이 있어야합니다 (지금은 내 앞에 이클립스가 그런 식입니다.). 반환 될 내용이 표시됩니다.
이것은 약간의 어리석은 일이지만 간단한 방법은없는 것입니다.
AspectJ를 사용하여 관심있는 메소드의 반환 값을 확보하는 것으로 JAR을 계측 할 수 있습니다. 의 문서에 따르면 AspectJ의 프로그램은 이클립스 다른 프로그램처럼 디버깅 할 수 있습니다 .
라이브러리를 다시 설치하지 않고 클래스를 짜는 두 가지 옵션이 있습니다.
바이너리 JAR 처리가 허용되는 경우 후 위빙;
VM에서 위빙 에이전트를 활성화해야하는로드 시간.
Eclipse 문서 (위 링크) 및 AspectJ 개발 환경 가이드를 참조하십시오 .
'IT' 카테고리의 다른 글
Android Spinner에서 한 항목을 숨기는 방법 (0) | 2020.08.22 |
---|---|
스트리밍 리소스가 RESTful 패러다임에 어떻게 처리합니까? (0) | 2020.08.22 |
RESTful 서비스의 비 CRUD 작업 (0) | 2020.08.22 |
http 페이지에서 https를 사용하는 Ajax (0) | 2020.08.22 |
정규식을 사용하여 일치하는 대신에 생성 (0) | 2020.08.22 |