在命令行上运行时挂起的Spring Boot应用程序

时间:2017-10-20 08:40:08

标签: java spring-boot yaml

我有一个无法使用.yml配置文件运行的Spring Boot应用程序。下面是我运行的命令:

java -jar /opt/myAppFolder/myApp.war

我有一个配置文件夹与我运行war文件的位置相同。在该配置中,我有一个application.yml文件,应用程序需要检索一些配置:

security:
  user:
  password: password
logging:
  level:
     org.springframework.security: DEBUG
release:
  sourceDir: /$ANY_DIR
  targetDir: /$ANY_DIR
users:
  - name: $ANY_NAME
    pwd : $ANY_NAME
  - name: $ANY_NAME
    pwd : $ANY_NAME

mail:
  host: $ANY_NAME
  recipients: $ANY_NAME
  subject: $ANY_NAME
  body: $ANY_NAME

server:
    port: 9000
spring:
  profiles:
    active: prod

问题:一旦我在命令行上运行应用程序,该进程就会挂起。没有输出,没有记录。我试图通过命令行启用调试。没有用。

如果我放置一个带有属性扩展名的文件,它就可以工作。但是我想使用.yml,因为我有更方便的动态属性列表。为什么没有显示任何内容?

任何帮助表示感谢。

Spring Boot版本:1.5.7

操作系统版本:Ubuntu 3.13.0-24-generic

1 个答案:

答案 0 :(得分:5)

终于解决了。

所以这是故事:

我已联系过Spring Boot Team,他们建议我升级到1.5.8版本.RELEASE。

一旦我这样做了,我就遇到了另一个问题;应用程序不再挂起,而是在没有记录任何内容的情况下关闭。 最终,我的logback-spring.xml文件中出现了错误。它是malformatted.And在其“prod”配置文件中,我没有任何控制台appender.Hence没有输出可见。所以我修复了我的文件,它开始工作了。

更多关于我与Spring Boot Team的沟通:

https://github.com/spring-projects/spring-boot/issues/10711