SonarLint 会产生错误:
Package names should comply with a naming convention (squid:S00120) ... With the default regular expression ^[a-z]+(\.[a-z][a-z0-9]*)*$.
然而,JLS允许甚至建议使用下划线。第6.1条。声明说,i.a。,
如果域名包含连字符或任何其他特殊字符 不允许在标识符(§3.8)中,将其转换为下划线。
我可以更改正则表达式还是必须在产品中修复?
答案 0 :(得分:1)
考虑使用SonarQube服务器。您可以将SonarLint插件连接到服务器,并操纵SL在IDE中执行SCA的方式。
SQ的一个更好的功能是能够禁用SCA规则并将其从以后的所有扫描中删除。使用此功能,您可以禁用包名称规则(我也觉得很烦人),a而不是让编辑视图混乱。
另一种选择是创建一个新规则,该规则将对包名称强制执行新的正则表达式约定 - 例如,允许包名称为Camel Case。
最后,正如Jonathan Rosenne在对该问题的评论中所述,Jonathan在此问题后打开的包名称问题SONARJAVA-2596已修复,可以看作here。
参考: