나는 런타임에 다음과 같은 오류가 발생합니다 :NoClassDefFound 오류
Source schemaFile = new StreamSource(XSDreader);
이는 Xerces에 클래스 인스턴스를 선두가에 : 코드 줄에서
java.lang.NoClassDefFoundError: mf/javax/xml/transform/stream/StreamSource
암호.
- 내가 구글 코드에서 안드로이드에 대한 Xerces를 다운로드.
- 는
- 코드에서 (OK를 컴파일)을 Xerces에 프로젝트
- 추가 내 프로젝트 빌드 경로 라이브러리로의 Xerces JAR 파일
- 에서 JAR 파일을 수출 이클립스에서 새로운 자바 프로젝트로 코드를 수입 나는 .jar 파일을 검사
mf.javax...
에 javax...
에서 모든 import
라인을 변경하며 예상 경로에있는 클래스 StreamSource를 포함
,Xerces/bin을 클래스 패스 (.class 파일)에 추가하려고 시도했지만 도움이되지 않았습니다.
프로젝트를 정리했으나 도움이되지 않았습니다.
내 프로젝트를 검사하고 Xerces에 프로젝트 VMClassLoader
이보다 더 깊이 파고 수없는 클래스를 찾을 수없는 지점에 동일한 JDK 준수 버전 (1.7)
디버깅 된 코드를 사용하고 있어요.
이 시점에서 나는 아이디어가 떨어졌습니다.
Android 프로젝트 및 라이브러리에 사용되는 libs는 JDK 1.6을 사용해야한다고 생각합니다. 1.7로 컴파일 된 Jars 파일은 NoClassDefFoundError의 일반적인 원인입니다. 1.7로 컴파일 된 클래스는 apk 파일로 패키지되지 않습니다. – Leszek
@Lecho 귀하의 제안을 시도했지만 문제가 해결되지 않았습니다. – ilomambo
"내 프로젝트 빌드 경로 라이브러리에 Xerces JAR 파일을 추가했습니다."- Android 개발 용 Eclipse를 사용할 때 다른 JAR과 마찬가지로 JAR을 실행 취소하고'libs /'에 JAR 파일을 넣으십시오. "클래스 패스에 Xerces/bin을 추가하려고했습니다."- 실행 취소합니다. – CommonsWare