답변:
잡거나 잡지 않은 모든 예외를 위반하려면 :
!(this instanceof java.lang.ClassNotFoundException)
com.myapp.*
(앱의 네임 스페이스 접두어로 대체하십시오)java.*
(참고 : OP의 질문에 따라 Java 라이브러리에서 중단되지 않도록 이것을 남겨 두십시오)android.*
(위와 같이 자체 앱 코드를 디버그하지 마십시오)org.junit.*
중단 점 창을 열면 조건부 중단 여부를 알 수있는 몇 가지 옵션이 제공됩니다. 여기서 찾고있는 것은 "클래스 필터"입니다. 예를 들어, Java 패키지 경로를 사용하여 와일드 카드 식을 지정할 수 있으며 일치하는 클래스에서 생성 된 예외에 대해서만 중단됩니다.
포착되지 않은 경우 코드의 모든 예외 및 기타 예외를 위반하려면 :
이 메소드는 정상 작동 중에 런타임에서 발생하는 예외 유형을 걸러냅니다 (매우 예외적이지 않습니까?). 너무 많이 걸러 내기 때문에 클래스 필터를 사용하지 않습니다. 코드의 버그로 인해 런타임 클래스에서 예외가 발생하는 경우가 종종 있습니다 (예 : 마지막으로 배열 목록에 액세스).
포착되지 않은 예외에 대해서만 Java 예외 BreakPoints / 모든 예외 를 사용하십시오 .
잡힌 예외 와 잡히지 않은 예외 에 대해 클래스에 대한 새 Java 예외 BreakPoint 를 추가하십시오 . 조건을 활성화 하고 다음과 같이 설정하십시오.Exception (java.lang)
!(this instanceof java.lang.ClassNotFoundException || this instanceof android.system.ErrnoException || this instanceof java.io.FileNotFoundException || this instanceof javax.net.ssl.SSLHandshakeException || this instanceof javax.net.ssl.SSLPeerUnverifiedException || this instanceof android.system.GaiException || this instanceof java.net.SocketTimeoutException || this instanceof java.net.SocketException || this instanceof java.security.NoSuchAlgorithmException)
예외가 아닌 다른 예외가 발생하면 조건에서 제외 목록에 추가하십시오. (BTW, 사용 java.lang.Exception
은 두 번째 "예외"항목을 효과적으로 얻는 방법입니다.)