在类路径中找不到Hadoop配置,在服务器中使用Java从本地运行mapreduce
所以 我试图按照apache的指令在集群中设置类路径 在Mapreduce模式下运行Pig脚本 要在mapreduce模式下运行Pig脚本,请执行以下操作:在类路径中找不到Hadoop配置,在服务器中使用Java从本地运行mapreduce,java,hadoop,apache-pig,Java,Hadoop,Apache Pig,所以 我试图按照apache的指令在集群中设置类路径 在Mapreduce模式下运行Pig脚本 要在mapreduce模式下运行Pig脚本,请执行以下操作: 将PIG_CLASSPATH环境变量设置为集群配置目录(包含core-site.xml、hdfs-site.xml和mapred-site.xml文件的目录)的位置: export PIG\u CLASSPATH=/mycluster/conf 将HADOOP_CONF_DIR环境变量设置为集群配置目录的位置: 导出HADOOP\u CON
export PIG\u CLASSPATH=/mycluster/conf
ERROR 4010: Cannot find hadoop configurations in classpath (neither hadoop-site.xml nor core-site.xml was found in the classpath)
您还可以检查hadoop-env.sh脚本,查看类路径设置为什么。请添加conf文件夹作为-classpath的参数。这应该行得通
HADOOP_CLASSPATH=/mycluster/conf
做
再次运行pig为我修复了它。您必须设置属性“pig.use.override.hadoop.configs”如果在属性文件中为true,PigServer将使用文件中定义的属性,而不是在类路径中查找配置文件导出HADOOP\u类路径=$HADOOP\u HOME/etc/HADOOP我将HADOOP配置文件(core-site.xml和mapred site.xml)包含在maven的pom.xml中
export HADOOP_HOME=/path/to/hadoop
...
[hadoop目录]/etc/hadoop
core-site.xml
mapred-site.xml
...
运气好吗?我也面临着同样的问题。有什么解决办法吗?
-classpath /home/nubes/pig/conf:/home/nubes/hadoop/conf;
export HADOOP_HOME=/path/to/hadoop
<build>
...
<resources>
<resource>
<director>[hadoop-directory]/etc/hadoop</directory>
<includes>
<include>core-site.xml</include>
<include>mapred-site.xml</include>
</includes>
</resource>
</resources>
...
</build>