Glassfish & MongoDB connection error : NoClassDefFoundError
Glassfish & MongoDB connection error : NoClassDefFoundError
我正在 运行 正在尝试连接到 MongoDB 的 Glassfish 服务器。起初我为服务器和 MongoDB 创建了单独的项目。所以现在我正在尝试合并这些项目,但似乎我尝试做的任何事情都会导致失败。
我得到的当前错误是:
2018-07-05T19:54:36.249+0200|Severe: java.lang.NoClassDefFoundError: org/bson/conversions/Bson
我很清楚错误发生在 运行 时间内,可能的原因是我的 class 路径。
目前我将我的所有代码从一个项目复制到另一个项目,添加了 Maven 依赖项并发生了以下情况:
如果我在 Glassfish 服务器所在的同一文件夹中为我的 MongoDB 和 运行 创建一个单独的 .java 文件,它工作得很好.
如果我运行服务器并尝试从另一个服务器调用方法class(稍微修改)出现上面的错误
没有错误的简化代码示例:
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.BasicDBObject;
import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoIterable;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
public class MyClass{
public static void main(String[]args){
String ip = "127.0.0.1";
int port = 27017;
MongoClient mongoClient = new MongoClient(ip,port);
/* Remaining code */
}
}
错误:
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.BasicDBObject;
import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoIterable;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
public class MyClass{
private MongoClient mongoClient;
public MyClass(String ip, int port){
mongoClient = new MongoClient(ip, port); // Error called here
}
/* Remaining code */
}
从 server.java 文件调用:
MyClass mc = new MyClass("127.0.0.1",27017);
我也试过单独下载所有的bson jar文件并将它们添加到项目中但是没有效果...
对我来说可行的解决方案是删除整个项目并重新创建它。显然是Eclipse有问题或者是我之前弄错忘记了
我正在 运行 正在尝试连接到 MongoDB 的 Glassfish 服务器。起初我为服务器和 MongoDB 创建了单独的项目。所以现在我正在尝试合并这些项目,但似乎我尝试做的任何事情都会导致失败。
我得到的当前错误是:
2018-07-05T19:54:36.249+0200|Severe: java.lang.NoClassDefFoundError: org/bson/conversions/Bson
我很清楚错误发生在 运行 时间内,可能的原因是我的 class 路径。
目前我将我的所有代码从一个项目复制到另一个项目,添加了 Maven 依赖项并发生了以下情况:
如果我在 Glassfish 服务器所在的同一文件夹中为我的 MongoDB 和 运行 创建一个单独的 .java 文件,它工作得很好.
如果我运行服务器并尝试从另一个服务器调用方法class(稍微修改)出现上面的错误
没有错误的简化代码示例:
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.BasicDBObject;
import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoIterable;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
public class MyClass{
public static void main(String[]args){
String ip = "127.0.0.1";
int port = 27017;
MongoClient mongoClient = new MongoClient(ip,port);
/* Remaining code */
}
}
错误:
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.BasicDBObject;
import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoIterable;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
public class MyClass{
private MongoClient mongoClient;
public MyClass(String ip, int port){
mongoClient = new MongoClient(ip, port); // Error called here
}
/* Remaining code */
}
从 server.java 文件调用:
MyClass mc = new MyClass("127.0.0.1",27017);
我也试过单独下载所有的bson jar文件并将它们添加到项目中但是没有效果...
对我来说可行的解决方案是删除整个项目并重新创建它。显然是Eclipse有问题或者是我之前弄错忘记了