2014-12-06 2 views
1

조인 자 및 분할 자 함수를 사용하여 맵 축소 결합 문제를 해결하고 있습니다. 나는 Google에서 많은 것을 검색했으며 프로젝트의 참조 된 라이브러리에 guava-18.0.jar 파일을 추가하는 방법을 찾았습니다. ,mapreduce에 가입하십시오.

Error: java.lang.ClassNotFoundException: com.google.common.base.Splitter 
    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) 
    at edu.cs.okstate.cs.Partitioning.Partition_Mapper.setup(Partition_Mapper.java:29) 
    at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:142) 
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764) 
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364) 
    at org.apache.hadoop.mapred.Child$4.run(Child.java:255) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.security.auth.Subject.doAs(Subject.java:415) 
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190) 
    at org.apache.hadoop.mapred.Child.main(Child.java:249) 
+0

작업을 시작하려고하면이 문제가 발생합니까? – markg

+0

실제로 오류 : java.lang.ClassNotFoundException : com.google.common.base.Splitter –

+0

실행 한 명령을 표시 할 수 있습니까? –

답변

0

난 당신이 종속성 관리 도구를 프로젝트를 관리 할 수 ​​IDE를 사용하지 않을 같은데요 (메이븐, Gradle을 : 나는 또한 jar 파일에 javadoc의 위치를 ​​첨부하지만 여전히 점점이 오류가 아래에 언급 Ant + Ivy ...), Guava 병은 실제로 하둡 작업의 클래스 패스로 끝나지 않습니다.

배포 된 항목과 번들되어 있는지 확인하십시오.