[java] Intellij에서 디버깅하는 동안 반환하기 전에 반환 값을 찾을 수 있습니까?

와:

Object method(){
    ...
    return /* some complex expression */
}

디버깅하는 동안 어떤 값이 반환되는지 확인할 수있는 방법이 있습니까? 어떻게 든 반환 직후에 발생하지만 실행 코드가 호출 코드로 이동하기 전에 중단 점을 설정합니까? 반환 값이 무엇인지 알 수 있고 모든 지역 변수의 값을 확인할 수 있기를 원합니다.

내가 지금하는 방법은 임시 변수를 만드는 것 Object ret = /* something complex */; return ret;입니다. 그러나 그것은 번거롭고 불필요한 불필요한 코드 줄을 추가합니다.

참고 : 이것은 Visual Studio에서 디버깅하는 동안 반환하기 전에 반환 값을 찾을 수 있지만 intellij 와 동일한 질문 입니다.



답변

이 작업을 수행 할 수있는 몇 가지 방법이 있습니다. 첫 번째는 메소드 서명에 중단 점을 설정하는 것입니다.이 경우 Object method () {에 중단 점을 설정합니다. 이를 통해 분석법의 시작 및 종료를 관찰 할 수 있습니다. 위에서 설명한 것처럼 ” Watch method return values” 와 함께 이것을 사용해야한다고 생각 하지만 계산하는 데 너무 오래 걸리므로 완전히 테스트 할 수 없었습니다. 이는 디버거의 성능을 크게 저하 시키므로 디버깅하는 데 시간이 더 오래 걸립니다.

또한 다음을 수동으로 수행 할 수 있습니다.

  1. 리턴 라인에 중단 점을 설정하십시오.
  2. 리턴 라인에 도달하면 리턴 라인을 클릭하십시오. 특히보고자하는 조작에 커서를 놓고 Run-> Evaluate Expression (또는 Alt-F8)으로 이동하면 해당 시점에서 표현식을 실행해야합니다. 돌아 오는 것을 돌려줍니다.

참고 : 중단 점을 작성하는 경우 중단 점을 중단 한 경우 표현식을 수행하고 기록하도록 IDEA에 IDEA와 관련하여 할 수있는 작업이 많이 있습니다. 중단 점을 마우스 오른쪽 단추로 클릭하고 특성을 클릭하면 수행 할 수있는 작업을 살펴볼 수 있습니다.

업데이트 : 첫 번째 방법과 함께 시도하십시오. 디버깅 세션을 느리게하거나 정지시키는 것처럼 보이는 “Watch method return values”를 사용하지 마십시오. 대신 다음을 수행하십시오

  1. 보고자하는 리턴 표현식을 마우스 오른쪽 단추로 클릭하고 “시계에 추가”를 클릭하십시오.
  2. 그런 다음 위에서 언급 한대로 메소드 중단 점을 추가하십시오.
  3. 프로그램을 디버깅하면 메소드가 메소드 서명을 위반합니다.
  4. 계속 다시 깨지면에 대한 F9 키를 히트 후에 반환 식을 계산되었으며 수익식이 시계 컬럼에 있어야합니다.

메소드 중단 점은 느리므로 시간이 더 걸릴 수 있음을 기억하십시오. 성능 적중을 너무 많이 인식하는 경우이를 개선하는 까다로운 방법은 메소드 중단 점없이 리턴 문 중단 점을 설정 한 후 메소드 중단 점을 추가하는 것입니다. 후에 return 문 브레이크 포인트 안타 후 계속.

도움이 되었기를 바랍니다,


답변

IntelliJ IDEA 2016.3 : 디버그 패널의 톱니 바퀴 버튼 안에 숨겨져 있습니다. 확인 Show Method Return Values한다 확인 .

IntelliJ IDEA 2016.3 "방법 반환 값 표시"

반환 값을 보려는 함수 내부를 디버거를 사용하여 중단 하십시오.

기능을 강화하다

기능에서 나가 십시오 (또는 탈출 할 때까지 넘어가십시오 ).

물러나 다

반환 값이 변수에 나타나는지 확인하십시오.

반환 값을 관찰하다


답변

디버거 패널 에는 Watch 메소드 반환 값 버튼이 있습니다 .

감시 방법 반환 값 :이 버튼을 클릭하면 마지막으로 실행 된 방법의 반환 값을 볼 수 있습니다.

watch 메소드 리턴 값

IDEA 12 구성 :

아이디어 12


답변

이것은 얼마 전에 요청되었지만이 상황을 처리하고 싶을 때 다른 방법을 사용합니다.

디버깅 할 때 표현식 (여기서는 “return”바로 뒤에있는 표현식)을 표시하고 CTRL + ALT + F8 (Quick Evaluate Expression)을 누르십시오. IntelliJ가 반환되는 값을 보여주는 작은 창을 표시합니다.


답변