我已经从git hub克隆了sqoop项目并使用build.xml使用build来在Windows 7中构建它来创建一个sqoop-1.4.6-SNAPSHOT.jar并将其部署在cdh5环境中的/usr/lib/sqoop
中但是当我运行sqoop import命令时,我在堆栈跟踪中得到以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/kitesdk/data/mapreduce/DatasetKeyOutputFormat
at org.apache.sqoop.mapreduce.DataDrivenImportJob.getOutputFormatClass(DataDrivenImportJob.java:179)
我做错了吗?使用Windows来构建项目错误,我需要添加额外的罐子吗?
答案 0 :(得分:1)
Sqoop在克隆时管理其依赖关系的程度与打包时的依赖关系略有不同。我强烈建议您使用BigTop或其中一个distributions的Sqoop。
构建在与您正在部署的操作系统不同的操作系统上并不重要。
在你的情况下,看起来风筝根本没有被添加到你的类路径中。由于您已手动构建Sqoop,因此可以将jar添加到:
SQOOP_HOME / lib中
或
SQOOP_HOME /构建
接下来,检查您的权限。确保运行sqoop命令的用户可以访问上述目录。该用户应具有执行权限。此外,用户应该可以读取罐子。
如果一切都失败了,请通过user mailing list与