如何使Maven插件与SonarScanner一起使用?
我正在RHEL 7.5上运行以下命令:
纱线版本:Hadoop 3.1.0
mvn --version:Apache Maven 3.5.3
SonarQube 7.1
节点-v:v9.5.0
npm -v:5.6.0
我使用pom.xml文件转到此目录:/opt/sonarqube/web/META-INF/maven/org.sonarsource.sonarqube/sonar-web
我运行以下命令:
sudo /usr/local/apache-maven/bin/mvn -X clean verify
我希望构建能够成功并成功。但是我得到这个错误:
[INFO]在以下位置运行“ yarn run build” /opt/sonarqube/web/META-INF/maven/org.sonarsource.sonarqube/sonar-web [DEBUG]执行命令行 [/opt/sonarqube/web/META-INF/maven/org.sonarsource.sonarqube/sonar-web/node/yarn/dist/bin/yarn, 运行,构建] [INFO]纱线运行v1.1.0 [ERROR]错误找不到 package.json文件位于 “ /opt/sonarqube/web/META-INF/maven/org.sonarsource.sonarqube/sonar-web” [INFO] info访问https://yarnpkg.com/en/docs/cli/run 有关此命令的文档。 [信息] -------------------------------------------------- ---------------------- [INFO]内置失败[INFO] -------------------------------------------------- ---------------------- [INFO]总时间:12.336 s [INFO]完成于:2018-07-27T01:43:17Z [信息] -------------------------------------------------- ---------------------- [ERROR]无法执行目标 com.github.eirslett:frontend-maven-plugin:1.6:yarn(纱线运行脚本) 在sonar-web项目上:无法运行任务:'yarn run build'失败。 org.apache.commons.exec.ExecuteException:进程退出并显示 错误:1(退出值:1)-> [帮助1] org.apache.maven.lifecycle.LifecycleExecutionException:失败 执行目标com.github.eirslett:frontend-maven-plugin:1.6:yarn(yarn 在项目sonar-web上运行脚本):无法运行任务 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154) 在org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject中 (LifecycleModuleBuilder.java:117) 在org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject中 (LifecycleModuleBuilder.java:81) 在org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) 在org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) 在org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) 在org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) 在org.apache.maven.cli.MavenCli.execute(MavenCli.java:956) 在org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
我修改了Maven的settings.xml文件。我如何让Maven与SonarQube合作?
答案 0 :(得分:1)
应从项目根目录执行分析,而不能从其他任何地方进行分析。您似乎是从...在扩展插件文件目录中执行它的?
此外,实际运行分析的命令是:
mvn sonar:sonar
当然,应该将其与构建结合使用,因此通常用作:
mvn clean build sonar:sonar