昨天部署 Spring Boot 项目时,发现 Tomcat 跑不起来。
Tomcat 日志显示 snakeyaml 读取配置文件报错:
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 1024
找了一圈,发现比较接近的问题是:
最后找到两个解决方案:
application.yml
上的所有注释application.yml
保持所有注释,末尾添加一个空行application.yml
里的配置值,主要使用双引号或单引号,解决配置值出现的符号。但这次应该不是这个问题。 1
ikas 2023-09-13 19:33:06 +08:00
有没有对比最终打包后的编码?以前遇到过这个问题,是 idea 与 maven 配置的编码不一致问题导致的
|
2
fox0001 OP @ikas #1 谢谢回复。配置文件的字符编码,应该是没问题的,都是 UTF-8 。目前怀疑文件里参杂了 Unix 和 Windows 的换行符。
|
3
liuyunlong 2023-09-15 10:31:55 +08:00
会不会有这个可能,当你修改时所处的换行符格式出现了问题。例如 windows 修改 的换行符 。当然这只是建议
|