我的问题是关于执行以下代码时引发的异常:
public boolean createUser(String name, String nickname, String password) {
Hash h = new Hash();
String hashedPass = h.hashPassword(password);
MongoCollection users = Connection.connect().getCollection("users");
RegisteredUser rUser = new RegisteredUser(name, hashedPass, nickname);
users.save(rUser);
return true;
}
崩溃发生在users.save(rUser);处。如下:
Exception in thread "main" java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.introspect.AnnotatedMember.fixAccess()V
at org.jongo.marshall.jackson.JacksonObjectIdUpdater.mustGenerateObjectId(JacksonObjectIdUpdater.java:48)
at org.jongo.Insert.preparePojo(Insert.java:72)
at org.jongo.Insert.save(Insert.java:47)
at org.jongo.MongoCollection.save(MongoCollection.java:128)
at aud.io.mongo.MongoDatabase.createUser(MongoDatabase.java:40)
at rest.Test.main(Test.java:8)
我正在使用以下依赖项:
<dependency>
<groupId>org.jongo</groupId>
<artifactId>jongo</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.5.0</version>
</dependency>
这是怎么回事?
我尝试了什么: -通过Maven重新导入 -更改mongoDB版本(此代码在使用3.5.0的旧项目中有效)
数据库已联机并且可以运行。
我的猜测: 不兼容的依赖版本