更新时间:2025-03-28 GMT+08:00
分享

unicode解析问题

问题现象

sonarqube引擎的check阶段显示失败,并且日志里提示存在无法解析的字符。

原因分析

Java编译器不仅会编译代码,同时也会解析unicode字符,并且unicode字符的优先级最高。“\u000d”是换行符,在编译器中,会识别后续代码为下一行,所以不会显示格式问题。

而在实际sonarqube分析中,“\u000d”所在行都已被注释,因此会多一个右括号,在使用涉及编译的规则时导致编译出错。

处理方法

删除“//”,或者将左括号手动换行。

相关文档