2012-05-16 4 views
0

나는 아파치의 StringUtils 클래스의 isEmpty와 isBlank 메소드를 사용했다. 주 몇 후 벌금 방식으로 작동이 방법은 갑자기 나는 오류를 가지고NoClassDefFoundError에 대하여

java.lang.NoClassDefFoundError가 :이 오류가 갑자기 일이 왜 혼란스러워했다

org.apache.commons.lang3.StringUtils 누군가 갑자기 일어난 일을 이해하도록 도와 준다면 괜찮을 것이다.

사람들 아파치가 자신의 JAR 파일에서 정의를 변경했을 수도 있다고 말했던 것입니다. 갑자기 이런 일이 일어난 이유를 정말로 혼란스럽게 생각합니다. 빌드 경로에서 이전 jar 파일을 제거하고 같은 Jar 파일을 다운로드하고 추가했습니다. 그것은 경로를 구축하는 것입니다, 그러면이 문제는 다시 제기됩니다.

그것은 시장 코드에서 어떤 일이 일어나고, ADT 및 시장 코드와의 상호 작용이 문제에

그래서 정말 혼란이 없다?

+0

여기에 귀하의 ans입니다 http://stackoverflow.com/questions/9857539/noclassdeffounderror-when-googleanalyticstracker-getinstance/9857669 # 9857669 – Akram

+0

@Akki : 나는 그 방식으로 jar 파일을 추가했다. 그것은 recongized되었고 잘 작동했다. 갑자기이 예외가 생겼고, 또한 classno를 얻지 못했다. t 예외가 발견되었습니다 –

+0

프로젝트가 필요하면 모든 jar 파일과 함께 폴더 이름이 libs인지 확인하십시오. – Akram

답변

0

NoClassDefFoundError는 JVM 또는 ClassLoader 인스턴스가 클래스 정의에서로드하려고 시도하고 클래스 정의가없는 경우 NoClassDefFoundError가 발생했다고 말합니다.

startup script is overriding Classpath environment variable 일 수 있습니다.

+0

나는 이해하지만, 내 질문은 지난 10 주 동안 정상적으로 작동했지만 JVM이나 Classloader가 갑자기이 문제에 직면 한 이유가 궁금했습니다. –

1

Android SDK 도구를 업데이트 한 후 나에게도 발생했습니다. 현재 버전 (19)에서, 당신이해야 할 것은 :

  1. 는 프로젝트의 루트 디렉토리에 libs와/폴더를 확인하고, 이동이 후
  2. (폴더의 이름은 "libs와"고정)이 모든 항아리를 넣어 Java 빌드 경로 -> 라이브러리를 열고 이전에 추가 한 모든 사용자 정의 jar를 제거하십시오.