这种情况下,需要进行如下排查:
- 检查配置的端口格式
两个注意点:- port前有空
- 冒号’
:
'之后有空格
总之,正确的书写格式,文字会变色,如下所示:
- 工程中是否还有其他类型的配置文件
如果项目中,不止有application.yml
这一个配置文件,要注意配置文件的加载顺序。
如下是application开头的配置文件的加载顺序
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/application*.yml</include>
<include>**/application*.yaml</include>
<include>**/application*.properties</include>
</includes>
</resource>
而,后加载的配置文件,会覆盖其前加载的配置文件中相同属性名的配置内容。
举个例子,后缀名为.properties
的配置文件在后缀名为.yml
的之后加载,那么.properties
中配置的内容就会覆盖 .yml
中配置的 属性名相同 的内容。最直观的例子,就是上文提到的,端口号server.port
的配置。
所以,如果工程中的配置文件有以properties
结尾的,就要检查其中配置的端口是否和yml
中配置的不一致,导致后者的配置被覆盖。
可以全改成以.yml
结尾的,避免麻烦。