sqoop版本:1.4.7
Hbase版本:2.1.3
錯誤:
Sqoop關聯HBase報錯:找不到或無法加載主類 org.apache.hadoop.hbase.util.GetJavaProperty
解決方案
第一步:修改hbase/bin/目錄下的hbase文件
切到182行,在add_to_cp_if_exists “${HBASE_HOME}/hbase-server/target” 這裏最後添加**/classes**
第二步:註釋到187到195行的內容
第三步:切到317行左右
在 if [ -n “KaTeX parse error: Expected 'EOF', got '&' at position 21: …OP_IN_PATH}" ] &̲& [ -f "{HADOOP_IN_PATH}” ]; then下面加上一段:
# If built hbase, temporarily add hbase-server*.jar to classpath for GetJavaProperty
# Exclude hbase-server*-tests.jar
temporary_cp=
for f in "${HBASE_HOME}"/lib/hbase-server*.jar; do
if [[ ! "${f}" =~ ^.*\-tests\.jar$ ]]; then
temporary_cp=":$f"
fi
done
然後把
HADOOP_JAVA_LIBRARY_PATH=$(HADOOP_CLASSPATH="$CLASSPATH" "${HADOOP_IN_PATH}" \
改成
HADOOP_JAVA_LIBRARY_PATH=$(HADOOP_CLASSPATH="$CLASSPATH${temporary_cp}" "${HADOOP_IN_PATH}" \