运行SpringBoot应用报错:java.exe进程退出值1(附IDE日志)
运行Spring Boot应用时遇到Exit Value 1错误及Gradle流异常解决思路
错误现象
启动Spring Boot应用时出现如下错误:
command 'D:/programs/openjdk-17.0.2_windows-x64_bin/jdk-17.0.2/bin/java.exe'' finished with non-zero exit value 1
IDE日志输出:
INFO - STDERR - Exception in thread "DisconnectableInputStream source reader" org.gradle.api.UncheckedIOException: java.nio.channels.AsynchronousCloseException INFO - STDERR - at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:62) INFO - STDERR - at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:41) INFO - STDERR - at org.gradle.util.internal.DisconnectableInputStream$1.run(DisconnectableInputStream.java:127) INFO - STDERR - at java.base/java.lang.Thread.run(Thread.java:833) INFO - STDERR - Caused by: java.nio.channels.AsynchronousCloseException INFO - STDERR - at java.base/java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202) INFO - STDERR - at java.base/sun.nio.ch.SocketChannelImpl.endRead(SocketChannelImpl.java:389) INFO - STDERR - at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:428) INFO - STDERR - at java.base/sun.nio.ch.SourceChannelImpl.read(SourceChannelImpl.java:113) INFO - STDERR - at java.base/sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:59) INFO - STDERR - at java.base/sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:107) INFO - STDERR - at java.base/sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:101) INFO - STDERR - at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:282) INFO - STDERR - at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343) INFO - STDERR - at org.gradle.util.internal.DisconnectableInputStream$1.run(DisconnectableInputStream.java:98)
环境说明:使用JDK 17、Gradle 7.4.1,已分配5GB堆内存且未超出,排除堆内存不足问题。
可能的原因及解决方案
- IDE与Gradle进程通信中断:
AsynchronousCloseException本质是Gradle的输入流在读取时被异步关闭,多是IDE与Gradle进程间的通信异常导致。- 重启IDE并清理缓存(比如IntelliJ中执行
File -> Invalidate Caches...),之后重新构建运行。 - 在IDE设置中切换Gradle运行方式:从"IDE内置Gradle"改为"本地Gradle分发",避免进程通信冲突。
- 重启IDE并清理缓存(比如IntelliJ中执行
- Gradle与JDK版本适配问题:尽管Gradle 7.4.1官方宣称支持JDK 17,但部分场景下仍可能存在兼容瑕疵。
- 尝试升级Gradle到7.6及以上版本(对JDK 17的支持更完善),或临时降级到JDK 11测试,验证问题是否复现。
- Windows系统文件锁/进程冲突:Windows文件系统的锁机制可能导致Gradle无法正常读取项目资源。
- 关闭所有占用项目文件的进程(如文件管理器、其他编辑器),执行
gradlew clean后重新构建。 - 检查杀毒软件是否拦截Java或Gradle进程,临时关闭杀毒软件后测试。
- 关闭所有占用项目文件的进程(如文件管理器、其他编辑器),执行
- 应用启动隐性错误被掩盖:Exit Value 1可能是Spring Boot应用启动时的具体错误,只是被Gradle的流异常掩盖。
- 直接通过命令行执行
gradlew bootRun,查看控制台输出的完整错误信息,大概率能发现应用启动时的配置错误、依赖冲突等问题。
- 直接通过命令行执行
内容的提问来源于stack exchange,提问作者lupin
相关产品推荐
相关产品推荐

