alibaba / alibaba/DataX

自定义mongodbreader,打包上传mongodbreader-0.0.1-SNAPSHOT.jar后,运行报错

Open
#2,091 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
17.4k
Forks
5.7k
PR merge metrics
No merged PRs in 30d

Description

Exception in thread "taskGroup-0" 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:748)
Caused by: java.lang.ClassNotFoundException: com.alibaba.fastjson2.JSON
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more

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:748)
Caused by: java.lang.ClassNotFoundException: com.alibaba.fastjson2.JSON
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more

at com.alibaba.datax.common.exception.DataXException.asDataXException(DataXException.java:48)
at com.alibaba.datax.core.taskgroup.TaskGroupContainer.start(TaskGroupContainer.java:195)
at com.alibaba.datax.core.taskgroup.runner.TaskGroupContainerRunner.run(TaskGroupContainerRunner.java:24)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: 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)
... 1 more
Caused by: java.lang.ClassNotFoundException: com.alibaba.fastjson2.JSON
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
自定义mongodbreader,打包上传mongodbreader-0.0.1-SNAPSHOT.jar后,运行报错,在mongodbreader的pom文件中添加fastjson2依赖后再次打包上传仍然报错

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with mongodbreader/pom and MongoDBReader.java at line 200, then inspect how the plugin JAR is packaged and loaded by DataX. Reproduce the reported run and verify that the packaged reader can load the required class without the reported NoClassDefFoundError.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, mongodb
Domain
databases
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.