今天打算从头创建了一个Spring Cloud项目,过程可以说是磕磕绊绊,不是依赖问题就是一些pom的问题。一度想要放弃,但还是咬牙坚持了下来。弄到最后感觉没啥问题的时候,突然发现Spring Boot既然不能读取application.properties、application.yml配置文件?好好好,这么玩是吧?
我二话没说,反手就是百度、Bing、Google,其解决方案如下。
简单来说,就是你每次启动时,一般都会重新编译并且将文件生成到target目录,如果你在target目录没有发现配置文件,说明编译时,没有将resource目录下的配置文件编译到target目录下,因此Spring Boot无法加载配置文件。
解决办法就是:
src/main/java **/*.* src/main/resources **/*.* org.springframework.boot spring-boot-maven-plugin
将上述代码放在pom文件中即可。
但是事情远远没有上述那么简单,我搜索了大半个互联网,都仅仅只有上述的解决方案,但是我不管怎么通过上述代码去改pom文件,都无济于事。正当我一筹莫展之际,我的目光锁定在了:
pom
我在心里暗想,这个打包方式是pom,我改成jar的话,它以jar包形式进行打包,会不会解决这个问题?于是:
jar
再次运行……成功发现target目录下生成了配置文件,真的是无语了……
后来查阅资料发现:
在Maven项目中,POM文件(Project Object Model)和JAR文件在
POM(pom):
JAR(jar):
通常,一个Maven项目可以包含多个模块,每个模块都有不同的
总之,
有时候一个人排查BUG真的很无助,特别是发现百度、Bing上CSDN翻阅大半页都是一个回答,真的非常绝望。Google也发现没有类似的问题。这个时候只能完全凭借感觉以及运气来解决……