Spring Boot项目启动MongoDB报错java.io.IOException: Could not start process

youyiyang 2018-10-11 07:30:35
大家好!

本人在用Spring Boot + MongoDB开发一个项目的时候,出现下面这个错误:
java.io.IOException: Could not start process: <EOF>
at de.flapdoodle.embed.mongo.AbstractMongoProcess.onAfterProcessStart(AbstractMongoProcess.java:79)

。。。

看上去是MongoDB没能启动起来。这个报错前面的log是这样的:

2018-10-11 07:26:02.937 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : note: noprealloc may hurt performance in many applications
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.870+0800 I CONTROL [initandlisten] MongoDB starting : pid=17744 port=55804 dbpath=C:\Users\EDDIEYOU\AppData\Local\Temp\embedmongo-db-724bbc45-0667-4ab9-a8b7-d40b90e3437f 32-bit host=Dell-Inspiron
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] targetMinOS: Windows Vista/Windows Server 2008
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] db version v3.2.2
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] git version: 6e71d0d568e134c029203593b00a0103e7cdf30b
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] allocator: tcmalloc
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] modules: none
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] build environment:
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] distarch: i386
2018-10-11 07:26:02.939 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] target_arch: i386
2018-10-11 07:26:02.940 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.871+0800 I CONTROL [initandlisten] options: { net: { bindIp: "127.0.0.1", http: { enabled: false }, port: 55804 }, security: { authorization: "disabled" }, storage: { dbPath: "C:\Users\EDDIEYOU\AppData\Local\Temp\embedmongo-db-724bbc45-0667-4ab9-a8b7-d40b90e3437f", journal: { enabled: false }, mmapv1: { preallocDataFiles: false, smallFiles: true }, syncPeriodSecs: 0.0 } }
2018-10-11 07:26:02.940 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.872+0800 I STORAGE [initandlisten] exception in initAndListen: 28663 Cannot start server. The default storage engine 'wiredTiger' is not available with this build of mongod. Please specify a different storage engine explicitly, e.g. --storageEngine=mmapv1., terminating
2018-10-11 07:26:02.940 INFO 19376 --- [ Thread-3] o.s.b.a.mongo.embedded.EmbeddedMongo : 2018-10-11T07:26:02.872+0800 I CONTROL [initandlisten] dbexit: rc: 100
2018-10-11 07:26:02.945 ERROR 19376 --- [ main] d.f.e.process.runtime.AbstractProcess : failed to call onAfterProcessStart()


这个项目是Gradle的,编译什么的都没有问题。
build.gradle文件如下:

buildscript { // buildscript 代码块中脚本优先执行

// ext 用于定义动态属性
ext {
springBootVersion = '2.0.3.RELEASE'
}

// 使用了 Maven 的中央仓库(也可以指定其他仓库)
repositories {
//mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
}

// 依赖关系
dependencies {

// classpath 声明说明了在执行其余的脚本时,ClassLoader 可以使用这些依赖项
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}

// 使用插件
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

// 指定了生成的编译文件的版本,默认是打成了 jar 包
version = '1.0.0'

// 指定编译 .java 文件的 JDK 版本
sourceCompatibility = 1.8

// 使用了 Maven 的中央仓库(也可以指定其他仓库)
repositories {
//mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
}

// 依赖关系
dependencies {

// 该依赖用于编译阶段
compile('org.springframework.boot:spring-boot-starter-web')

// 添加 Thymeleaf 的依赖
compile('org.springframework.boot:spring-boot-starter-thymeleaf')

// 添加 Spring Data Mongodb 的依赖
compile('org.springframework.boot:spring-boot-starter-data-mongodb')

// 添加 Embedded MongoDB 的依赖用于测试
compile('de.flapdoodle.embed:de.flapdoodle.embed.mongo')

// 该依赖用于测试阶段
testCompile('org.springframework.boot:spring-boot-starter-test')
}


请大家帮忙看下,到底是哪里的问题?谢谢!
...全文
511 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dong yang 2021-03-06
  • 打赏
  • 举报
回复
看不懂,能解释的详细一些吗?
mydreamk 2019-05-16
  • 打赏
  • 举报
回复
引用 1 楼 _waylau 的回复:
使用该项目的独立部署模式,详见项目首页
老师,我下载你那个mongodb demo运行的时候也出现这个错误,能详细一点吗?我看不懂这个解释
youyiyang 2018-10-16
  • 打赏
  • 举报
回复
引用 1 楼 kkkloveyou 的回复:
使用该项目的独立部署模式,详见项目首页
谢谢老卫的指点!
_waylau 2018-10-15
  • 打赏
  • 举报
回复
使用该项目的独立部署模式,详见项目首页

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧