【问题标题】:IntelliJ NoClassDefFoundError for jar Dependencies in other Modules其他模块中 jar 依赖项的 IntelliJ NoClassDefFoundError
【发布时间】:2013-09-20 13:36:59
【问题描述】:

我有一个完美运行的带有 Maven 和项目依赖项的 Eclipse 项目。现在我想切换到 IntelliJ IDEA - 我的项目的导入运行良好(现在称为具有 Maven 和模块依赖项的模块),所有 Maven 配置似乎都是开箱即用的(可以扩展库并查看源代码)。 当我运行我的模块时,我得到:

Exception in thread "main" java.lang.NoClassDefFoundError: com/thoughtworks/xstream/XStream

从依赖模块中,xstream-1.4.2.jar 正确地位于该模块的构建路径中。

我尝试过但没有成功:

  • 将项目导入为 Eclipse 项目,然后应用 Maven 特性/框架支持
  • 将项目作为 Maven 项目导入
  • 使缓存无效
  • Maven 重新导入并生成源和更新文件夹

有效但不是解决方案:我可以将 xstream-1.4.2.jar 添加到我正在运行的模块的依赖项中,但随后它会因下一个缺少的 jar 而失败。所以它似乎没有找到引用模块中引用的 jar。

当类路径上有两个不同版本的库时,经常会遇到 NoClassDefFoundError - 我仔细检查了,那里只有一个 xstream*.jar 文件。

感谢您的帮助。

谢谢你,马塞尔

【问题讨论】:

  • 欢迎在youtrack.jetbrains.com/issues/IDEA 提交带有示例项目的错误报告。
  • “xstream-1.4.2.jar 正确地位于该模块的构建路径中”是什么意思 - 它是该模块的 pom.xml 中的 maven 吗?
  • 你为你的运行配置分配了什么类路径?

标签: java eclipse maven intellij-idea


【解决方案1】:

xstream-1.4.2.jar 是否位于 .m2 存储库下的正确 groupid/artificatid/1.4.2/ 文件夹中?

如果您在 linux 上运行,.m2 将位于 /home//.m2 下 如果您在 Windows 上运行,.m2 文件夹将位于 C:\Users\.m2 下

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-17
    • 2019-08-25
    • 1970-01-01
    • 2019-12-13
    • 1970-01-01
    • 2021-09-02
    • 2020-10-27
    相关资源
    最近更新 更多