2017-01-09 270 views
0

好的,所以,我已经注意到弹簧引导的application.yml配置的一个奇怪的错误。弹簧引导application.yml配置bug

我有一个正常的application.yml,把我的价值观

@Value( “$ {} path.to.value”) 私有类型设为myVal

这devel的模式下工作正常,当我有我的src/main/RES在我的配置目录然而,当我上传的jar到服务器,这样运行:

java -Xms2024m -Xmx6564m -Dlog4j.configuration=/path/to/log4j2.xml -Dspring.profiles.active=dev -Dspring.config.location=/path/to/application.yml -jar myApp.jar 

的配置不受春读, 更糟的是,参数,我设置在我以前的配置似乎很难在编译O.o.因此,应用程序不会失败,相反,它使用与编译期间位于同一目录中的application.yml中的参数运行,如果application.yml确实用作配置文件,这看起来像是一个非常非常危险的错误而且我不会曲解整个事情。

我该如何特定到application.yml的路径?在我的代码中,编译时如何将配置值硬编码?有没有办法阻止它?

+0

我的猜测:由于某种原因,/path/to/application.yml必须是错误的。然后,最有可能的是,来自src/main/resources的配置被封装在jar中,这就是Spring-Boot加载的内容。 – alexbt

回答

0

尝试使用file://path/to/application.yml