나는 자체 HBase 자바 클라이언트 코드로 만들었지 만 실제로 컴파일하고 실행하는 데 어려움을 겪고 있습니다. 커맨드 라인에서 컴파일 중입니다.이 작업을 수행하는 방법이나 클래스 경로에 필요한 병을 찾을 수 없었습니다. 나는 javac의 명령을 실행하면 잘 컴파일java.lang.NoClassDefFoundError : org/apache/hadoop/hbase/MasterNotRunningException
$HADOOP_HOME/hadoop/hadoop-0.20.2/hadoop-0.20.2-core.jar:
$HADOOP_HOME/hbase/hbase-0.90.0/hbase-0.90.0.jar:
$HADOOP_HOME/hbase/lib/zookeeper-3.3.2.jar
: 아래
내가 사용하고 클래스 패스입니다. 그러나 Java 코드를 실행하면 아래 오류가 발생합니다.Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/MasterNotRunningException
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.MasterNotRunningException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: HBaseConnection. Program will exit.
무엇이 누락 되었습니까?
감사합니다.
감사합니다. 예, javac 명령에 올바른 클래스 경로를 전달했지만 이러한 Hadoop 파일이 내 전역 클래스 경로에 있지 않기 때문에 java 명령을 사용하여 Java 클라이언트를 실행할 때 오류가 발생했습니다. "java -classpath $ MYCLASSPATH HBaseConnection"을 사용하여 클래스 패스에 전달하면 트릭을 수행합니다. – knt