컨텍스트 :자바 정적 내부 클래스 초기화 오류
이 가LazyInitialization.temporaryDirectory();
가
는 [좀 더 코드를 추가 수정 됨] 아래 내 코드는 결국 위의 호출을 다음과 같이 java.io.File의 클래스는 정적 내부 클래스의 메소드를 가지고 코드 행. 내 문맥 상 괜찮거나/예상되는 temporaryDirectory() 메소드 내에서 예외가 발생합니다. 내가 다음에 다시 같은 방법 (createTempFile)를 호출 할 때 다음
try {
File tempFile = File.createTempFile("aaa", "aaa");
} catch (Exception e) {
// handle exception
}
, 나는 "java.lang.NoClassDefFound 오류 - 클래스 java.io.File에 $ LazyInitialization를 초기화 할 수 없습니다"얻을
질문 : 내부 메서드 LazyInitialization은 정적 메서드가 호출되었을 때 클래스 로더에 의해로드되어야한다고 가정했습니다. 내부 메서드에서 예외가 발생했지만. 그러나 두 번째 호출시 NoClassDefFound 오류가 나타나는 이유는 무엇입니까? 원래의 가정은 틀린가?
나는 그것이 작동한다고 생각한다. 코드를 보여주세요. – thejh