【问题标题】:Why is Java looking for java.lang.NoClassDefFoundError: com/mongodb/client/MongoClients? [duplicate]为什么 Java 正在寻找 java.lang.NoClassDefFoundError: com/mongodb/client/MongoClients? [复制]
【发布时间】:2021-07-10 13:27:54
【问题描述】:

我已经使用了搜索功能,并尝试通过提出的解决方案来解决这个问题,但没有结果。我正在构建一个 Minecraft 插件,为了继续前进,我需要使用 MongoDB。我已经使用 Maven 实现了依赖项并实现了“Maven shade plugin”以在运行时包含库但没有结果。我现在完全被困住了,因为我觉得我尝试了一切。 Eclipse 识别出它是一个 Maven 项目,因为存在蓝色的“m”。

在运行时 Java 找不到它需要的类。

控制台日志:

java.lang.NoClassDefFoundError: com/mongodb/client/MongoClients
    at rico.polkadot.Main.onEnable(Main.java:182) ~[?:?]
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[spigot.jar:2991-Spigot-018b9a0-f3f3094]
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:351) ~[spigot.jar:2991-Spigot-018b9a0-f3f3094]

我尝试过的:

  • 使用 Maven 添加依赖项
  • 将 JAR 添加到清单中
  • 在 Eclipse 中添加 JAR 以构建路径

我的 POM.xml 文件:

POM.xml

我在这里错过了什么?

【问题讨论】:

    标签: java mongodb maven build-dependencies


    【解决方案1】:

    自己修好了。

    解决方案:

    清单版本:1.0 类路径:libs/mongo-java-driver-3.7.1.jar libs/bson-3.7.1.jar libs/mongodb-driver-sync-3.7.1.jar 创建者:1.7.0_06(甲骨文公司)

    需要在 MANIFEST 文件中包含所有需要的驱动程序/依赖项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-16
      • 2015-05-25
      相关资源
      最近更新 更多