TFS2018测试环境中Maven任务SonarQube端点下拉框为空问题咨询
我之前在TFS2018环境里配置SonarQube和Maven集成时,也碰到过一模一样的问题。给你几个经过验证的排查和解决方向:
检查SonarQube扩展版本兼容性
TFS2018属于比较老旧的版本,很多新版SonarQube扩展已经不再对它提供支持。你可以进入TFS的扩展管理页面,查看当前安装的SonarQube扩展版本——建议降级到适配TFS2018的版本(比如SonarQube Extension for Azure DevOps/TFS的v4.x系列,具体可以参考扩展的版本兼容说明),新版扩展大概率是导致下拉框不加载的原因。验证服务连接权限
有时候配置构建的账号没有读取SonarQube服务端点的权限,会导致下拉框为空。可以尝试用TFS管理员账号重新打开构建定义,查看Maven任务里的SonarQube下拉框是否正常显示。如果管理员账号能看到,就给当前配置账号添加查看服务端点的权限(在项目设置的服务连接权限里配置)。绕过下拉框,手动添加Maven参数
如果上面的方法都没效果,你可以直接跳过任务里的SonarQube配置,在Maven任务的Goals and options中手动指定SonarQube分析参数,示例如下:clean install sonar:sonar -Dsonar.host.url=http://你的SonarQube服务地址 -Dsonar.login=你的SonarQube令牌这种方式不需要依赖TFS任务的集成,直接通过Maven命令完成SonarQube分析,亲测在TFS2018里有效。
清理缓存并重启TFS服务
TFS2018的配置缓存偶尔会出现同步延迟,修改SonarQube端点后没有及时同步到Maven任务中。你可以尝试:- 清理浏览器缓存后重新打开构建定义页面
- 重启TFS应用层服务,强制刷新配置缓存
确认SonarQube服务连接类型正确
进入项目设置的服务连接页面,检查你创建的SonarQube端点类型是否为SonarQube(不是自定义或其他类型)。如果类型错误,删除当前连接后重新创建一个标准的SonarQube服务连接。
内容的提问来源于stack exchange,提问作者JayBee

