问题:- Azure Devops 构建管道 yaml 中的 SonarQube 代码分析任务失败,出现以下错误。
我们尝试过什么:我们在AzureDevops管道中有SonarQube分析任务yaml,并且有一个maven任务使用"干净验证"目标,然后是sonarqube任务。 当我们执行此操作时,Maven 任务 getyting 失败并出现以下错误。
未能执行目标 org.sonarsource.scanner.maven:sonar-maven-plugin:3.8.0.2131:sonar on 项目:无法加载组件接口 org.sonar.api.utils.TempFolder:无法在 中创建临时文件夹/home/vowne/.sonar:/home/vowne/.sonar/.sonartmp_xxxxxxx: 没有空格 留在设备上。
不确定声纳库贝从哪里获取位置。 它现在占用用户主目录。/home/vowne.我们在其他位置有足够的空间,需要将声纳温度位置更改为那里。
我们可以在 maven 任务或声纳任务中添加一些东西来更改此温度的位置吗?
- task: SonarQubePrepare@4
inputs:
SonarQube: 'Sonarqube'
ScannerMode: 'Other'
extraProperties: |
sonar.projectName=${{ parameters.myName }}
sonar.coverage.xxxxxx.xmlReportPaths=$(System.DefaultWorkingDirectory)/xxxxxxx/xxxxxx/site/xxxxx/xxxxx.xml
在这里,我们可以为声纳任务添加一个额外的属性,例如sonar.userHome=$(System.DefaultWorkingDirectory)
或者Maven任务需要将"目标"从"干净验证"更改为一些自定义值。
根据源代码,此路径派生自以下属性:
sonar.globalWorking.directory
系统属性(如果不是绝对的,则相对于以下设置解析),sonar.userHome
系统属性,SONAR_USER_HOME
环境变量,.sonar
系统属性下的目录user.home
。
似乎最后一种情况与您的方案相匹配。尝试设置上述设置之一以选择其他位置而不是~/.sonar
。