关于java调用sqoop
sqoop版本是1.4.6的
java代码:
public static void ImportTest(){
String [] arg = new String[] {
"import",
"--connect","jdbc:oracle:thin:@192.168.10.242:1521:orcl",
"--driver","oracle.jdbc.OracleDriver",
"--username","SCOTT",
"--password","hnjz8888",
"--table","TEST_DATETIME",
"--hive-import",
"-m","1",
"--hive-database","nyga",
"--hive-table","test_java"};
// Expand the options
String[] expandedArgs = null;
try {
expandedArgs = OptionsFileUtil.expandArguments(arg);
} catch (Exception ex) {
System.err.println(ex.getMessage());
System.err.println("Try 'sqoop help' for usage.");
}
String toolName = expandedArgs[0];
Configuration pluginConf = SqoopTool.loadPlugins(new Configuration());
com.cloudera.sqoop.tool.SqoopTool tool = (com.cloudera.sqoop.tool.SqoopTool) SqoopTool
.getTool(toolName);
if (null == tool) {
System.err.println("No such sqoop tool: " + toolName
+ ". See 'sqoop help'.");
}
Sqoop sqoop = new Sqoop(tool, pluginConf);
Sqoop.runSqoop(sqoop, Arrays.copyOfRange(expandedArgs, 1, expandedArgs.length));
}
运行后,后台提示:
At minimum, you must specify --connect and --table
Arguments to mysqldump and other subprograms may be supplied
after a '--' on the command line.