我使用flapdoodle版本2.0.0在Java Springboot应用程序中运行嵌入式mongo集成测试。
在我正在研究的@DataMongoTest
测试用例中,我使用MongodConfigBuilder来设置特定版本:
mongodExe = starter.prepare(new MongodConfigBuilder()
.version(Versions.withFeatures(new GenericVersion("3.4.2"), Feature.SYNC_DELAY))
.net(new Net("localhost", 12345, Network.localhostIsIPv6())).build());
稍后,我还创建了一个IRuntimeConfig来设置自定义downloadUrl,以确保所有依赖项都来自我的本地网络。这一切都按预期工作,指定的嵌入式mongodb /版本从我指定的URL中提取。但是,在它执行此操作之前,它还会下载mongo的默认版本(目前为3.2.2):
例如:
{"message":"Download 3.2.2:OS_X:B64 : 10 %","logger_name":"org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongo","thread_name":"main","level":"INFO"}
{"message":"Download 3.2.2:OS_X:B64 : 20 %","logger_name":"org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongo","thread_name":"main","level":"INFO"}
{"message":"Download 3.2.2:OS_X:B64 : 30 %","logger_name":"org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongo","thread_name":"main","level":"INFO"}
我需要设置什么才能下载默认版本?它没有被使用,所以它是不必要的,它是从我想要避免的外部资源中提取的。