Morphia给出NoClassDefFoundError:com / mongodb / DBObject?

时间:2013-08-09 11:38:57

标签: mongodb morphia

我使用Mongo Java Client 2-11.2运行Morphia 0.102。

这是一个客户端/服务器应用。目前我在GlassFish上本地测试服务器端。

好的,当我在客户端运行一些代码时,使用Mongo和Morphia,没问题。然后,当在服务器端调用某些代码时,它会使用

在服务器上实例化Morphia
        mongoClient = new MongoClient("199.00.000.000", 27017);
        morphia = new Morphia(); //exception thrown

例外:

Caused by: java.lang.NoClassDefFoundError: com/mongodb/DBObject  
    at com.google.code.morphia.Morphia.<init>(Morphia.java:48)  
    at com.google.code.morphia.Morphia.<init>(Morphia.java:44)  

我花了几个小时试图改变Morphia和MongoDriver的版本,没有结果,我也不知道。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

你在war文件中包含morphia jar吗?添加到glassfish文件夹的东西几乎总是错误的答案。

答案 1 :(得分:0)

因此,当我从Netbeans本地运行GlassFish时,在glassfish文件夹中添加jar解决了这个异常。当我在服务器上上传Java EE模块时,问题就出现了 在各种文件夹中添加mongo和morphia jar并没有解决任何问题。解决它的事情:
- 我将我的Java EE模块集成到EAR中,然后部署了EAR(之前我只部署了没有EAR的Java EE模块 - 这肯定是一种非常糟糕的做法,但我不知道)。