自定义mongodbreader,打包上传mongodbreader-0.0.1-SNAPSHOT.jar后,运行报错
- Dominant language
- Java
- Stars
- 4.4k
- Forks
- 613
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 6
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
Research direction
Start at MongoDBReader.java:200 and inspect the mongodbreader pom and the produced mongodbreader-0.0.1-SNAPSHOT.jar. Check how the runtime plugin classpath handles the fastjson2 dependency, then reproduce the reader startup failure. Done means the packaged reader starts without the com/alibaba/fastjson2/JSON ClassNotFoundException.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, mongodb
- Domain
- data-engineering, databases
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100