Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hadoop类路径单节点群集Mac OS_Java_Hadoop - Fatal编程技术网

Java Hadoop类路径单节点群集Mac OS

Java Hadoop类路径单节点群集Mac OS,java,hadoop,Java,Hadoop,我需要一些帮助。虽然有很多不同的答案可供选择,我也尝试过,但都没有成功。我在MacOS中本地插入hadoop,当我尝试编译java程序时,我得到了以下错误。我知道问题在于设置正确的类路径,但在可能的情况下,提供类路径并不能使它工作。我已经在/usr/local/ceral/hadoop/1.2.1/libexec下安装了hadoop 我将我的java主页设置为导出java_home=“$(/usr/libexec/java_home)” 类路径设置为导出HADOOP_CLASSPATH=${HA

我需要一些帮助。虽然有很多不同的答案可供选择,我也尝试过,但都没有成功。我在MacOS中本地插入hadoop,当我尝试编译java程序时,我得到了以下错误。我知道问题在于设置正确的类路径,但在可能的情况下,提供类路径并不能使它工作。我已经在/usr/local/ceral/hadoop/1.2.1/libexec下安装了hadoop

我将我的java主页设置为导出java_home=“$(/usr/libexec/java_home)” 类路径设置为导出HADOOP_CLASSPATH=${HADOOP_HOME}/bin:${JAVA_HOME}/bin:${path}

但仍然得到以下错误。如有任何关于设置正确课堂路径的建议,将不胜感激

java:6:package org.apache.hadoop.io不存在 导入org.apache.hadoop.io.LongWritable; ^ java:7:package org.apache.hadoop.io不存在 导入org.apache.hadoop.io.Text; ^ java:8:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.FileInputFormat; ^ LineIndexer.java:9:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.FileOutputFormat; ^ java:10:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.FileSplit; ^ java:11:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.JobClient; ^ LineIndexer.java:12:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.JobConf; ^ LineIndexer.java:13:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.MapReduceBase; ^ LineIndexer.java:14:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.Mapper; ^ LineIndexer.java:15:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.OutputCollector; ^ LineIndexer.java:16:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.Reducer; ^ java:17:package org.apache.hadoop.mapred不存在 导入org.apache.hadoop.mapred.Reporter; ^ LineIndexer.java:21:找不到符号 符号:类MapReduceBase 位置:类LineIndexer 公共静态类LineIndexMapper扩展了MapReduceBase ^ LineIndexer.java:22:找不到符号 符号:类映射器 位置:类LineIndexer 实现映射器{ ^ LineIndexer.java:22:找不到符号 符号:可长写类 位置:类LineIndexer 实现映射器{ ^ LineIndexer.java:22:找不到符号 符号:类文本 位置:类LineIndexer 实现映射器{
^

看起来您的类路径错误,请尝试以下方法:

javac -classpath /usr/local/cellar/hadoop-1.2.1/hadoop-core-1.2.1.jar

或者将HADOOP_HOME env变量重新定义为
/usr/local/cell/HADOOP-1.2.1

您可以发布编译代码的方法吗(IDE,命令行-如果可以,请包含完整的命令行?)我正在使用命令行。这是编译方法..javac-classpath${HADOOP_HOME}/HADOOP-core-1.2.1.jar-d lineindexer_classes lineindexer.javaMy HADOOP_HOME设置为/usr/local/ceral/HADOOP/1.2.1/libexecthankyou。这很有帮助。我使用了javac-classpath/usr/local/ceral/HADOOP/1.2.1/libexec/HADOOP-core-1.2.1.jar-d lineindexer_classes lineindexer.java,并编译了它。