我是使用storm尝试提交storm-starter的新手,但是当我
mvn package
我得到了那个错误
java.lang.NoClassDefFoundError: org/yaml/snakeyaml/constructor/BaseConstructor,
compiling:(word_count.clj:16:1)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3463)
最佳答案
遇到像您遇到的 ClassPath 错误时的一个常见问题是,您可能会遇到传递依赖项的冲突;即,至少有两个 Artifact 提供不同版本的 Class Not Found,您需要排除冲突的一个。所以你必须识别碰撞,例如在 Maven 中做:
mvn 依赖:tree -Dverbose
并寻找碰撞的 Artifact ,在你的情况下是 uri:
org/yaml/snakeyaml/constructor/BaseConstructor
标识maven坐标,groupId=org.yaml,artifactId=snakeyaml
,您会发现您的案例中的 Artifact “测试”提供了另一个snakeyaml,因此像您对该 Artifact 的依赖项所做的那样添加了一个排除项:
```
<exclusions>
<exclusion>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
</exclusions>
```
关于maven - java.lang.NoClassDefFoundError : org/yaml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33793441/