java.lang.NoClassDefFoundError:com / mongodb / XXXXXX无法修复!(使用:MongoDB Java驱动程序,Spigot)

约书亚记

我正在用Java为Spigot / Bukkit(Minecraft)写一个插件,却想不通如何解决这个问题。尽管我用其他语言做了很多编程,但这是我第一次尝试用Java编程。我做了很多Google搜索,看了几十页,但所有内容都只是说做我已经尝试过的事情。

我正在使用eclipse,并已将我的项目转换为maven项目,并尝试安装mongo java驱动程序的各种变化。我尝试过:
-添加依赖项
-使用project-> properties-> Java Build Path-> Add External Jar将其添加到buildpath-
我完成了以上两者的结合
-我尝试过使用mongodb -driver,mongodb-driver-core和bson一起使用,并且与mongodb-java-driver(应该单独使用
-我已经尝试过仅使用mongodb-java-driver-
我已经尝试过使用许多不同的版本的驱动程序。

我做什么都没关系,当我将插件导出到jar并尝试在spigot服务器上运行它时,出现以下错误:

java.lang.NoClassDefFoundError: com/mongodb/MongoClientURI

在我的代码中可以使用任何mongo类替换MongoClientURI的地方。我是否没有正确使用驱动程序,是否缺少某些东西?这是怎么回事?

约书亚记

所以我最终解决了自己的问题。事实证明,在执行时,除了spigot插件,spigot不能识别任何jar文件。阴影本可以解决我的问题,但是我做到了,这也可以解决:

  1. 在我的项目目录中创建了一个名为MANIFEST.MF的文件。
  2. 在文件中添加了以下内容:

    清单版本:1.0
    类路径:libs / mongo-java-driver-3.2.2.jar
    创建者:1.7.0_06(Oracle Corporation)

  3. 在导出插件的最后一步中,选择了“使用工作空间中的现有清单”。

这意味着在运行时,子程序将在其库中包含{plugin location} /libs/mongo-java-driver-3.2.2.jar。

我在这里找到了解决方案:https : //www.spigotmc.org/threads/solved-mongodb-help.35922/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章