标签: flapdoodle-embed-mongo

UncategorizedMongoDbException:命令失败,错误 10107(NotMaster):服务器上的“非主”

我在执行 MongoDB 事务功能的集成测试用例时遇到以下异常。

org.springframework.data.mongodb.UncategorizedMongoDbException: Command failed with error 10107 (NotMaster): 'not master' on server localhost:60876. The full response is {"operationTime": {"$timestamp": {"t": 1615104939, "i": 1}}, "ok": 0.0, "errmsg": "not master", "code": 10107, "codeName": "NotMaster", "$gleStats": {"lastOpTime": {"$timestamp": {"t": 1615104939, "i": 1}}, "electionId": {"$oid": "7fffffff0000000000000001"}}, "lastCommittedOpTime": {"$timestamp": {"t": 0, "i": 0}}, "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1615104939, "i": 2}}, "signature": {"hash": {"$binary": {"base64": "AAAAAAAAAAAAAAAAAAAAAAAAAAA=", "subType": "00"}}, "keyId": 0}}}; nested exception is com.mongodb.MongoNotPrimaryException: Command failed with error 10107 (NotMaster): 'not master' on server …
Run Code Online (Sandbox Code Playgroud)

java mongodb spring-boot flapdoodle-embed-mongo

6
推荐指数
1
解决办法
1万
查看次数

找不到类 [de.flapdoodle.embed.process.config.IRuntimeConfig]

升级到 3.0.0 版的嵌入式 MongoDB 后,出现以下异常。

我在build.gradle.

testImplementation group: 'de.flapdoodle.embed', name: 'de.flapdoodle.embed.mongo', version: '3.0.0'
Run Code Online (Sandbox Code Playgroud)

下面给出了例外情况。

Caused by: java.lang.ClassNotFoundException: de.flapdoodle.embed.process.config.IRuntimeConfig
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_261]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[na:1.8.0_261]
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) ~[na:1.8.0_261]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[na:1.8.0_261]
    at java.lang.Class.forName0(Native Method) ~[na:1.8.0_261]
    at java.lang.Class.forName(Class.java:348) ~[na:1.8.0_261]
    at org.springframework.util.ClassUtils.forName(ClassUtils.java:284) ~[spring-core-5.2.10.RELEASE.jar:5.2.10.RELEASE]
    at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:324) ~[spring-core-5.2.10.RELEASE.jar:5.2.10.RELEASE]
Run Code Online (Sandbox Code Playgroud)

我在代码下方提供。我想在 Spring Boot 的集成测试中使用嵌入式 mongoDB 来实现 MongoDB 事务功能。

@Profile("test")
@ActiveProfiles("test")
public class TestMongoConfig1 implements InitializingBean, DisposableBean {

    MongodForTestsFactory factory = null;
    
    MongodConfig mongodConfig = MongodConfig.builder().version(Version.Main.PRODUCTION).build();

    MongodStarter runtime = MongodStarter.getDefaultInstance();

    MongodExecutable mongodExecutable = null;
    MongodProcess mongod …
Run Code Online (Sandbox Code Playgroud)

java spring-data spring-boot flapdoodle-embed-mongo

5
推荐指数
1
解决办法
1551
查看次数