配置参数后SonarQube Scanner无法扫描.pak后缀的PL/SQL文件
SonarQube无法扫描.pak后缀PL/SQL文件的排查方案
根因说明
SonarQube的PL/SQL分析插件默认仅识别内置后缀列表内的文件为PL/SQL代码,默认列表包含.sql、.pks、.pkb等常见PL/SQL文件后缀,默认不包含.pak后缀。你当前仅配置了inclusions路径规则和全局扫描语言,未告知PL/SQL插件需要识别.pak后缀的文件,因此插件会直接跳过所有.pak文件,不会纳入扫描范围。
解决步骤
- 第一步:在sonar-project.properties中添加PL/SQL自定义后缀配置,告诉插件识别.pak为合法PL/SQL文件后缀:
sonar.plsql.file.suffixes=.sql,.pak - 第二步:校验inclusions路径匹配规则是否符合实际仓库目录结构,你当前配置的
sonar.inclusions=**/sql/*.sql,**/package/*.pak仅会匹配各级目录下sql文件夹中的.sql文件、各级目录下package文件夹中的.pak文件。如果你的.pak文件存放在其他路径,可调整匹配规则,例如改为**/*.pak即可匹配所有目录下的.pak文件。 - 第三步:执行扫描时可添加
-X参数启用调试日志,扫描完成后查看日志中是否有.pak文件被索引、分析的记录,确认配置生效。
修改后完整配置示例
sonar.projectKey=XYZ sonar.projectName=XYZ sonar.projectDescription=PL/SQL Demo sonar.sources=. sonar.inclusions=**/sql/*.sql,**/package/*.pak sonar.language=plsql # 新增自定义后缀配置 sonar.plsql.file.suffixes=.sql,.pak
内容的提问来源于stack exchange,提问作者Deepak.Pal
相关产品推荐
相关产品推荐

