[debugging] IntelliJ에“예외 중단”이 있습니까?

첫 번째 예외 발생시 디버깅을 자동으로 중단하는 기능이 있습니까?

그래서 우리는

  1. 신청 시작
  2. 예외를 던지는 일을하다
  3. 예외가 발생한 곳에서 IntelliJ가 강조 표시됩니다.


답변

실행 | 중단 점보기 | 예외 중단 점


답변

대화 상자를 빠르게 여는 방법은 Ctrl+ SHIFT+ F8(Mac : Cmd+ SHIFT+ F8)를 누른 다음 예외 중단 점 탭을 클릭하는 것입니다. 이것이 마지막으로 본 탭인 경우에도 여전히 선택되어 예외를 설정하거나 해제 할 때 쉽게 넘길 수 있습니다.

이로 인해 예외가 발생한 코드 (또는 라이브러리 코드)에서 IntelliJ가 중단됩니다. 특히 예외 처리에서 스택이 실행되기 전에 catch / finally 블록을 찾기 전에 ‘첫 번째 기회’를 얻습니다.


팁 : Java는 클래스를로드 할 때 내부적으로 많은 예외를 발생시키는 경향이 있으므로 모든 예외를 위반하면 상당히 지루할 수 있습니다. 좋은 소식은 조건 필드를 사용하여 특정 유형의 예외를 제외 할 수 있다는 것 입니다.

예를 들면 다음과 같습니다.

!(this instanceof java.lang.ClassNotFoundException)

와 같은 여러 조건을 함께 연결할 수 있습니다 &&.

여기에 이미지 설명을 입력하십시오


답변

에서 하게 IntelliJ IDEA (14)는 다음으로 이동 :

Run -> View Breakpoints -> Check "Java Exceptions Breakpoints" -> Uncheck "Caught Exceptions"

선택을 취소하지 않으면 내부 예외가 발생할 Caught Exceptions때마다 실행이 중지됩니다 Java Framework.


답변

그렇습니다. IntelliJ IDEA의 중단 점 대화 상자에서 예외 중단 점 ( “예외”일 수 있음)을 정의해야합니다.

원하는 경우 조건 또는 클래스 또는 예외 또는 미 발견 예외에 관심이 있는지 여부를 기준으로 예외를 필터링 할 수 있습니다.


답변

왼쪽 상단의 작은 “+”기호를 클릭하면 새 중단 점을 추가 할 수 있습니다. 예외 중단 점을 선택하면 예외 클래스를 입력하여 중단 할 수있는 대화 상자가 나타납니다 (모든 예외를 중단하지 않으려는 경우).


답변

intellij의 최신 버전에서 실행 > 중단 점보기 아래에 있습니다.

그런 다음 Java 예외 중단 점 -> 모든 예외를 확인하십시오 .

예외를 디버깅하는 좋은 방법은 기본 앱 패키지와 와일드 카드를 사용하는 것 .*입니다. 이 방법으로 다른 모든 라이브러리 예외를 건너 뜁니다. 대부분의 경우 다른 라이브러리가 아닌 앱에서 예외를 찾고 있기 때문에 (많은 예외가 될 수 있음).

예를 들어 이미지에 표시된 것처럼 com.gs.mercury.*앱에서 예외가 발생할 때마다 중단 하는 데 사용 합니다. 예외 상황을 처리하고 (예외 상황을 처리하고 정상적인 상황의 흐름을 처리하지 않기 위해) 예외를 사용하는 경우 거의 항상 원하는 예외에 도달 할 때만 중지됩니다.

PD. 꽤 유용한 Catch 클래스 필터 를 지적하기 위해 대답이 추가되었습니다 .

중단 점


답변