aqi915 发表于 2015-12-15 11:08:48

Java Sqoop 离奇错误

各位大侠好:
       最近碰到个比较奇怪的错误,想把hdfs数据迁移到oracle,需要用java写,选则sqoop api 写时,用main()调用 sqoop迁移方法可以正常运行,当发布到java web 项目时就会报错,在tomcat\webapps\sqoop_web\WEB-INF\lib下是有相关的包的,但读不到?请各位大神帮忙分析下下呀?

错误信息:
15/12/15 11:06:47 INFO orm.CompilationManager: $HADOOP_MAPRED_HOME is not set
\tmp\sqoop-hyq\compile\c4efdc05a84fb556ed9c71b7550e43f2\medical_doctor.java:7: 错误: 程序包org.apache.hadoop.io不存在
import org.apache.hadoop.io.BytesWritable;
                           ^
\tmp\sqoop-hyq\compile\c4efdc05a84fb556ed9c71b7550e43f2\medical_doctor.java:8: 错误: 程序包org.apache.hadoop.io不存在
import org.apache.hadoop.io.Text;
                           ^
\tmp\sqoop-hyq\compile\c4efdc05a84fb556ed9c71b7550e43f2\medical_doctor.java:9: 错误: 程序包org.apache.hadoop.io不存在
import org.apache.hadoop.io.Writable;
                           ^
\tmp\sqoop-hyq\compile\c4efdc05a84fb556ed9c71b7550e43f2\medical_doctor.java:37: 错误: 无法访问Writable
public class medical_doctor extends SqoopRecordimplements DBWritable, Writable {
       ^
找不到org.apache.hadoop.io.Writable的类文件
\tmp\sqoop-hyq\compile\c4efdc05a84fb556ed9c71b7550e43f2\medical_doctor.java:529: 错误: 找不到符号
public void parse(Text __record) throws RecordParser.ParseError {


cranberries8 发表于 2015-12-15 11:40:42

你看下 tomcat 启动你的项目是加载的jar是否包含hadoop的相关jar

aqi915 发表于 2015-12-15 13:41:09

cranberries8 发表于 2015-12-15 11:40
你看下 tomcat 启动你的项目是加载的jar是否包含hadoop的相关jar

有的,看过了...

atsky123 发表于 2015-12-15 18:30:00

aqi915 发表于 2015-12-15 13:41
有的,看过了...

环境变量没有设置吧

aqi915 发表于 2016-2-2 14:27:13

atsky123 发表于 2015-12-15 18:30
环境变量没有设置吧

设置了,
页: [1]
查看完整版本: Java Sqoop 离奇错误