복붙노트

[HADOOP] classpath를 설정 한 후에 org.apache.hadoop.conf 패키지가 존재하지 않습니다.

HADOOP

classpath를 설정 한 후에 org.apache.hadoop.conf 패키지가 존재하지 않습니다.

저는 hadoop의 초보자 가이드 북을 튜토리얼로 사용하여 hadoop 초보자입니다.

Mac OS X 10.9.2 및 hadoop 버전 1.2.1을 사용하고 있습니다.

터미널에서 echo $ PATH를 호출 할 때 적절한 클래스 경로를 모두 설정했습니다.

다음은 내가 얻은 결과입니다.

WordCount1.java 컴파일을 시도하고 다음과 같은 오류가 발생합니다.

WordCount1.java:2: package org.apache.hadoop.conf does not exist
import org.apache.hadoop.conf.Configuration ;
                         ^
WordCount1.java:3: package org.apache.hadoop.fs does not exist
import org.apache.hadoop.fs.Path;
                       ^
WordCount1.java:4: package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.IntWritable;
                       ^
WordCount1.java:5: package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.Text;
                       ^
WordCount1.java:6: package org.apache.hadoop.mapreduce does not exist
import org.apache.hadoop.mapreduce.Job;
                              ^
WordCount1.java:7: package org.apache.hadoop.mapreduce does not exist
import org.apache.hadoop.mapreduce.Mapper;
                              ^

친절하게 도와주세요.

해결법

  1. ==============================

    1.CLASSPATH 변수는 JDK 도구 (javac)를 포함한 응용 프로그램에 사용자 클래스를 찾는 위치를 알려주는 방법입니다.

    CLASSPATH 변수는 JDK 도구 (javac)를 포함한 응용 프로그램에 사용자 클래스를 찾는 위치를 알려주는 방법입니다.

    이 변수를 아래와 같이 설정하고 클래스 컴파일을 시도 할 수 있습니다.

    export CLASSPATH=$CLASSPATH:/Users/oladotunopasina/hadoop-1.2.1/hadoop-core-1.2.1.jar
    
  2. ==============================

    2.Maven, Gradle, sbt 등과 같은 빌드 도구를 사용하는 경우

    Maven, Gradle, sbt 등과 같은 빌드 도구를 사용하는 경우

    빌드 파일에 종속성 플러그인을 추가해야합니다.

    예를 들어 Maven의 경우 pom.xml에 다음을 추가해야한다.

    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-core</artifactId>
        <version>1.2.1</version>
    </dependency>
    

    다른 빌드 도구에 대한 종속성 설정은 여기에서 찾을 수 있습니다.

  3. from https://stackoverflow.com/questions/24390492/package-org-apache-hadoop-conf-does-not-exist-after-setting-classpath by cc-by-sa and MIT license