de_*_*xtr 7 eclipse mongodb spring-boot
我有一个使用 Maven 构建的 Spring Boot 项目,我打算在其中使用嵌入式 mongo db。我在 Windows 7 上使用 Eclipse。
正如我在 Internet 选项的“连接”选项卡中所观察到的那样,我支持使用自动配置脚本的代理。当我尝试运行应用程序时出现以下异常。
java.io.IOException:无法为https://downloads.mongodb.org/win32/mongodb-win32-i386-3.2.2.zip 在 de.flapdoodle.embed.process.store.Downloader.downloadInputStream(Downloader .java:131) ~[de.flapdoodle.embed.process-2.0.1.jar:na] 在 de.flapdoodle.embed.process.store.Downloader.download(Downloader.java:69) ~[de.flapdoodle. embed.process-2.0.1.jar:na] ....
当我在 Web 浏览器中点击以下 URL 时,MongoDB 下载得很好:
https://downloads.mongodb.org/win32/mongodb-win32-i386-3.2.2.zip
这让我相信我的 Eclipse 中可能缺少一些配置,或者可能是 Maven 项目本身。请帮我找到正确的配置。
在 Windows 机器上对我有用的方法:
手动下载 zip 文件(https://downloads.mongodb.org/win32/mongodb-win32-i386-3.2.2.zip)并将其(非解压)放入此文件夹:
C:\Users\<Username>\.embedmongo\win32\
Run Code Online (Sandbox Code Playgroud)
解决您的问题的一种方法是执行以下操作。
下载 MongoDB 并将其放置在公司网络内部的 ftp 服务器上(您不需要代理)。
然后在你的项目中写这样的配置
@Bean
@ConditionalOnProperty("mongo.proxy")
public IRuntimeConfig embeddedMongoRuntimeConfig() {
final Command command = Command.MongoD;
final IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder()
.defaults(command)
.artifactStore(new ExtractedArtifactStoreBuilder()
.defaults(command)
.download(new DownloadConfigBuilder()
.defaultsForCommand(command)
.downloadPath("your-ftp-path")
.build())
.build())
.build();
return runtimeConfig;
}
Run Code Online (Sandbox Code Playgroud)使用该属性,mongo.proxy您可以控制 Spring Boot 是从您的 ftp 服务器还是从外部下载 MongoDB。如果设置为 true,则从 ftp 服务器下载。如果没有,那么它会尝试从互联网下载。
| 归档时间: |
|
| 查看次数: |
5443 次 |
| 最近记录: |