使用DataWorks的datax mongodb全量迁移报错,有大佬遇到过吗?com.alibaba.datax.common.exception.DataXException: Code:[Framework-13], Description:[DataX插件运行时出错, 具体原因请参看DataX运行结束时的错误诊断信息 .]. - java.lang.NoClassDefFoundError: com/alibaba/fastjson2/JSON
at com.alibaba.datax.plugin.reader.mongodbreader.MongoDBReader$Task.init(MongoDBReader.java:200)
at com.alibaba.datax.core.taskgroup.runner.ReaderRunner.run(ReaderRunner.java:45)
at java.lang.Thread.run(Thread.java:750)
这个报错看着是离线同步任务的json配置问题 您可以先参考mongo文档看下参数和参数值是否符合格式 特别是列表、字符串
https://help.aliyun.com/zh/dataworks/user-guide/supported-data-source-types-and-read-and-write-operations#concept-uzy-hgv-42b ,此回答整理自钉群“DataWorks交流群(答疑@机器人)”
这个错误表明在运行DataWorks DataX进行MongoDB全量迁移的过程中,DataX的MongoDB Reader插件在初始化阶段找不到Fastjson 2.x版本的类库(com.alibaba.fastjson2.JSON
)。
Fastjson是阿里巴巴开源的一个Java语言编写的高性能功能完备的JSON库,DataX MongoDB Reader可能在某个版本中采用了Fastjson 2.x系列,但在你的运行环境中未找到对应的依赖。
解决此问题的步骤如下:
确认DataX版本与插件兼容性:
添加缺失的依赖:
升级或降级DataX或MongoDB Reader插件:
检查DataX任务配置:
这个错误是由于缺少fastjson依赖导致的。你需要在项目中添加fastjson的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.78</version>
</dependency>
如果你使用的是Gradle,可以在build.gradle文件中添加以下依赖:
implementation 'com.alibaba:fastjson:1.2.78'
添加依赖后,重新构建项目,问题应该会得到解决。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。