我在使用hcatalog和direct参数的组合运行sqoop import时遇到问题 .
它给出了以下错误:

ERROR tool.ImportTool:遇到IOException正在运行导入作业:java.io.IOException:直接导入与使用连接管理器org.apache.sqoop.manager.OracleManager的HCatalog操作不兼容 . 请在org.apache的org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)的org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:223)中删除参数--direct . sqoop.manager.OracleManager.importTable(OracleManager.java:444)位于org.apache.sqoop.tool.ImportTool.run的org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:507)中(ImportTool.java: 615)org.apache.sqoop.Sqoop.run(Sqoop.java:147)org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)org.apache.sqoop.Sqoop.runSqoop(Sqoop) .java:183)org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)org.apache.sqoop.Sqoop.main( Sqoop.java:243)

我的sqoop import命令是:

sqoop import -Dorg.apache.sqoop.splitter.allow_text_splitter = true -Doraoop.disabled = false -Dmapred.child.java.opts =“ - Djava.security.egd = file:/ dev /../ dev / urandom” --connect“jdbc:oracle:thin:@somehost:1521:ORCL”--username username --password pass --table dbname.tablename --hcatalog-database test_h1 --hcatalog-table tablename --hcatalog-storage-stanza TEXTFILE --m 1 --direct --mapreduce-job-name jobname