Es scheint, als würden Sie sqoop mit einer JRE ausführen. JAVA_HOME ist jedoch auf JDK gesetzt
Ich habe versucht, sqoop (sqoop-1.4.3.bin__hadoop-1.0.0) unter Ubuntu einzurichten. Ich kann die grundlegende sqoop-Hilfe usw. ohne Probleme ausführen. Wenn ich Folgendes ausführe, wird eine Fehlermeldung angezeigt:
sqoop import --connect jdbc:mysql://localhost/test --table sales -m 1
13/04/19 10:35:24 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /opt/hadoop/hadoop-1.0.4
13/04/19 10:35:24 ERROR orm.CompilationManager: It seems as though you are running sqoop with a JRE.
13/04/19 10:35:24 ERROR orm.CompilationManager: Sqoop requires a JDK that can compile Java code.
13/04/19 10:35:24 ERROR orm.CompilationManager: Please install a JDK and set $JAVA_HOME to use it.
13/04/19 10:35:24 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Could not start Java compiler.
at org.apache.sqoop.orm.CompilationManager.compile(CompilationManager.java:176)
Ich habe gegoogelt, um eine Antwort auf diesen Fehler zu finden und die meisten Antworten darauf, JAVA_HOME auf Ihr JDK zu setzen, das ich habe (in ~ / .bashrc [unter Ubuntu]).
$ echo $JAVA_HOME
/usr/lib/jvm/jdk1.7.0_15
Dies sind die anderen Variablen, die ich setze:
export HADOOP_COMMON_HOME=/opt/hadoop/hadoop-1.0.4
export HADOOP_MAPRED_HOME=/opt/hadoop/hadoop-1.0.4
export SQOOP_HOME=/opt/hadoop/sqoop-1.4.3.bin__hadoop-1.0.0
export PATH=$PATH:$SQOOP_HOME/bin
Ich habe auch den mysql jdbc-Treiber zum lib-Ordner hinzugefügt.
Irgendwelche Ideen, warum ich diesen Fehler bekomme? Danke im Voraus, Diddy