[HADOOP] thread "main"의 예외 java.lang.NoClassDefFoundError : com / google / common / base / 전제 조건
HADOOPthread "main"의 예외 java.lang.NoClassDefFoundError : com / google / common / base / 전제 조건
자바지도에 의해 실행하는 동안 일식에서 응용 프로그램을 줄이고, 아래의 예외를 직면해라. Commons-logging-1.2.jar 파일을 빌드 경로에 포함 시켰지만 여전히 아래에 있습니다.
나는 새삼 스럽다. 친절하게 도와주세요.
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Preconditions
at org.apache.hadoop.conf.Configuration$DeprecationDelta.<init>(Configuration.java:314)
at org.apache.hadoop.conf.Configuration$DeprecationDelta.<init>(Configuration.java:327)
at org.apache.hadoop.conf.Configuration.<clinit>(Configuration.java:409)
at AverageNosClass.main(AverageNosClass.java:71)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Preconditions
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 4 more
해결법
-
==============================
1.빌드 경로에 올바른 Jar를 추가했는지 확인하십시오.
빌드 경로에 올바른 Jar를 추가했는지 확인하십시오.
-
==============================
2.빌드 경로에 guava-11.0.2.jar를 추가하면 문제가 해결되었습니다. 이 항아리는 / share / hadoop / tools / lib 폴더에 있습니다. hadoop 2.4.0을 설치했습니다.
빌드 경로에 guava-11.0.2.jar를 추가하면 문제가 해결되었습니다. 이 항아리는 / share / hadoop / tools / lib 폴더에 있습니다. hadoop 2.4.0을 설치했습니다.
-
==============================
3.Guava-x.y.z.jar이 누락 되었기 때문에 발생합니다. 추가했는지 확인하십시오.
Guava-x.y.z.jar이 누락 되었기 때문에 발생합니다. 추가했는지 확인하십시오.
-
==============================
4.다음에서 Google 컬렉션 JAR 사용
다음에서 Google 컬렉션 JAR 사용
이것은 귀하의 문제를 해결할 수 있습니다.
-
==============================
5.내 문제는 다음 항아리를 추가하여 해결되었습니다.
내 문제는 다음 항아리를 추가하여 해결되었습니다.
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>13.0-rc1</version> </dependency>
-
==============================
6.Hadoop lib 디렉토리에 eclipse 프로젝트에 사용 된 모든 jar 파일이 들어 있습니까?
Hadoop lib 디렉토리에 eclipse 프로젝트에 사용 된 모든 jar 파일이 들어 있습니까?
그렇지 않으면 Hadoop lib 디렉토리에 놓고 hadoop을 재시작하십시오.
-
==============================
7.MRUnit을 사용하려고 할 때 maven 종속성을 찾을 수 없을 때이 오류가 발생하여 수동으로 추가하려고했습니다. 이게 당신 사건입니까?
MRUnit을 사용하려고 할 때 maven 종속성을 찾을 수 없을 때이 오류가 발생하여 수동으로 추가하려고했습니다. 이게 당신 사건입니까?
문제는 수동으로 jar 파일을 추가하면 pum과 같은 버전으로 모두 추가 할 때까지 MRUnit jar 파일 (MRUnit의 pom 파일에있는 파일)의 나머지 부분을 묻는 데 실패합니다.
발견되지 않은 mrunit의 원인은 dependecy 선언에서 필요한 분류자를 사용하지 않고 있다는 것이 었습니다.
해결 방법은 분류 자 hadoop1 또는 hadoop2를 추가하는 것입니다.
-
==============================
8.이 문제는 guava-14.0.1 라이브러리를 추가하여 해결했습니다.
이 문제는 guava-14.0.1 라이브러리를 추가하여 해결했습니다.
from https://stackoverflow.com/questions/28317911/exception-in-thread-main-java-lang-noclassdeffounderror-com-google-common-bas by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 내 항아리에 테스트 코드를 포함하도록 Maven 음영 플러그인을 구성하려면 어떻게해야합니까? (0) | 2019.08.03 |
---|---|
[HADOOP] Hadoop에서이 오류가 발생했습니다. 실행 가능 null \ bin \ winutils.exe를 찾을 수 없습니다. (0) | 2019.08.02 |
[HADOOP] Hadoop 2.2.0의 HDFS 구성 파일은 어디에 있습니까? (0) | 2019.08.02 |
[HADOOP] Hadoop과 MySQL 통합 (0) | 2019.08.02 |
[HADOOP] Mapper and Reducer 클래스에서 변수를 공유하는 방법은 무엇입니까? (0) | 2019.08.02 |