我正在使用MongoDB Java Driver v3.2.2,我使用以下指令将新的String数组字段添加到现有文档中:
myMongoCollection.updateOne(new Document("id", id), Updates.set("arrayField", Arrays.asList(new Document("strField", strValue))));
它会产生以下异常:
org.bson.codecs.configuration.CodecConfigurationException:找不到 类java.util.Arrays $ ArrayList。
的编解码器
我是在编码错误还是与建议here (link)建议的驱动程序错误有关?
如果它与驱动程序错误相关,任何提示如何轻松获取最新尚未发布的版本(3.3)已经修复(即如何轻松创建JAR文件,知道GIT对我来说是全新的)?
非常感谢, 汤姆
答案 0 :(得分:1)
在mongodb-java-driver v3.2.2中,您可以使用Document
代替Updates.set
构建器。另请参阅Updating Documents
import static com.mongodb.client.model.Filters.eq;
myMongoCollection.updateOne(eq("id", id), new Document("$set", new Document ("arrayField", Arrays.asList(new Document("strField", strValue)))));
或者,如果修复程序已进入主分支,则可以从git:
构建jar$ git clone https://github.com/mongodb/mongo-java-driver.git
$ cd mongo-java-driver
$ ./gradlew
生成的jar将位于build/libs
目录中。