进程以退出代码 1 Spring Boot Intellij 结束
Posted
技术标签:
【中文标题】进程以退出代码 1 Spring Boot Intellij 结束【英文标题】:Process finished with exit code 1 Spring Boot Intellij 【发布时间】:2018-03-07 19:18:44 【问题描述】:当我运行我的项目时,我收到了消息“进程完成,退出代码 1”。我尝试了几种解决方案,但没有一个主题与我的错误相同。我的项目没有执行任何代码行,只是中止了进程。
【问题讨论】:
复制/粘贴命令行并在cmd.exe
中运行是否有效?
这可能是由于 application.properties 文件中的属性/配置不正确而发生的。请重新查看配置并更正错误
【参考方案1】:
-
从项目文件夹中删除文件夹 .idea。
从项目文件夹中删除所有 .iml。
【讨论】:
面临同样的问题,这个解决方案对我不起作用【参考方案2】:我遇到了同样的问题。 Springboot 以代码 1 退出,没有错误。但那是我在不使用 Spring Initializer 的情况下创建项目的时候。
我建议您备份您的代码并使用 Spring Initializer(服务 URL:https://start.spring.io)重新创建项目,这应该可以工作。并且您将能够比较设置差异。
【讨论】:
感谢您的回复。我的项目是按照您的建议创建的,并且始终有效。我的问题是它在没有任何源代码修改的情况下停止工作。【参考方案3】:它非常复杂,因为大多数情况下它可能是由于缺少属性而发生的。在我的情况下, application.properties 中未定义的以下属性导致此问题及其线索较少。希望对你有帮助
由于缺少任何 Bean 或组件中定义的服务器端口或任何其他占位符等属性,都可能导致此问题。验证所有属性和占位符。
@Value(value = "$resource.path.accountNumbers")
private Resource accountNumbers;
application.properties--verify all properties/placeholders
resource.path.accountNumbers=classpath:accountNumbers.properties
【讨论】:
【参考方案4】:您必须将logging.level.root
设置为DEBUG
并阅读相关日志才能发现问题。
如果您的应用使用 application.yml 文件,请在开头或结尾添加(或编辑):
logging:
level:
root: DEBUG
如果您的应用使用application.properties
,请在以下行添加(或编辑):
logging.level.root: DEBUG
例如,我的应用程序使用了一个未定义的属性,并且没有在常见日志中显示问题,启用调试级别日志记录后,我在日志中得到以下行:
Could not find key 'app.services.account.service' in any property source
【讨论】:
【参考方案5】:尝试通过在 main 方法中放置“try-catch”块、围绕“run”方法调用并在“catch”中打印堆栈跟踪来获取堆栈跟踪,如下所示。
public static void main(String[] args)
try
SpringApplication.run(MyApplication.class, args);
catch (Exception e)
e.printStackTrace();
【讨论】:
这对我有帮助!但我需要使用Throwable
而不是Exception
才能捕获Error
s。
很好,我可以检测到飞行路径问题。谢谢!!
这应该是一个公认的答案,因为它是通用的。我们不知道错误是什么,这种方式是检测它的最佳方式。例如,我的语法是 application.yml
的非法语法(我错过了 logging.pattern.console
配置中的
字符)。
我希望我早一天看到这个。这会为我节省很多时间。使用 throwable 是我找到问题的方法
这帮我找到了确切的原因!【参考方案6】:
遇到同样的问题。 通过指定父 Spring Boot Starter 项目修复。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.2.RELEASE</version>
<relativePath />
</parent>
【讨论】:
【参考方案7】:在这种情况下可能不完全正确,但缺少日志也可能是由于 logback.xml 文件中缺少配置文件配置而导致的。
【讨论】:
【参考方案8】:这个命令为我完成了这项工作:
mvn idea:idea
【讨论】:
【参考方案9】:对于springboot项目,最常见的原因是org.springframework.beans.factory.BeanCreationException
。搜索BeanCreationException
,在每个构造函数处调试,调试工程。然后你会发现'beanName'有问题,然后你可以专注于bean。
例如:
【讨论】:
以上是关于进程以退出代码 1 Spring Boot Intellij 结束的主要内容,如果未能解决你的问题,请参考以下文章