我可能遗漏了一些明显的东西,但我似乎无法获得 JavaScript 的扫描结果以显示在 SonarCloud 中。该存储库 95% 是一个带有 5% java 代码的 Angular 应用程序。Java 代码扫描出现在 SonarCloud中,但实际上我只需要扫描 angular 应用程序中的 javascript。
很明显,我们已连接到 SonarCloud,但 javascript 没有出现任何内容。
我添加<sonar.language>js</sonar.language>
到 pom.xml 文件中,效果是 SonarCloud 中根本没有出现任何扫描信息,大概是因为该属性取消扫描除 javascript 以外的任何语言,并且 javascript 扫描配置不正确。
我只想扫描角度项目并在 SonarCloud 中报告结果。通过扫描dist/portal
构建 Angular 项目的目录,或者通过扫描src/app
.
如果还扫描了java代码就可以了。
感谢您提供的任何帮助或指示。
- 使用的 ALM:带有 Maven 的 Bitbucket
- 仓库语言:java、javascript(只需要扫描javascript)
- 观察到错误:SonarCloud 中没有出现 javascript 的扫描结果
存储库的目录结构是:
- src
- app
- [rest of angular code]
- e2e
- [testing files]
- deploy
- pom.xml
- [java code for the deploy]
- bitbucket-pipelines.yml
这是 pipeline.yml,也是使用 maven 运行 sonarcloud 的步骤:
caches:
sonar: ~/.sonar/cache
steps:
- step: &buildArtifacts
name: Build and test
image:
name: [[NAME]]
aws:
access-key: $AWS_ACCESS_KEY
secret-key: $AWS_SECRET_KEY
caches:
- maven
- sonar
script:
- source prepare_environment.sh
- mvn -e clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
artifacts:
- artifact/**
这是目录pom.xml
中的属性deploy/
:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<sonar.language>js</sonar.language>
<sonar.sources>${project.basedir}/../dist/portal</sonar.sources>
</properties>