我目前正在开发一个 Java 项目,我的工作之一就是监视质量。作为工具,我将 Jenkins 与 Sonar 结合使用。这些工具很棒,它们帮助我快速、持续地跟踪问题。
我无法控制的一个问题是,有些人使用 UTF-8 以外的其他编码。
当这样的代码:
if (someString == "something") {
resultString = "string with encoding problem: �";
}
... 承诺,Sonar 将帮助我找到“字符串文字平等”问题。但是正如您在第二行中看到的,编码存在问题:“�”通常应该是“ ü ”。
是否有可能通过 Sonar/Findbugs/PMD 找到此类问题...
请指教!谢谢你。
Ps:当然,我已经尝试亲自以及通过电子邮件向我的共同开发人员解释这个问题。我什至自己更改了他们的项目/工作区编码......但不知何故,仍然成功地提交了这样的代码。