首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >请使用sonar.java.binaries提供项目的编译类

请使用sonar.java.binaries提供项目的编译类
EN

Stack Overflow用户
提问于 2017-10-27 13:45:26
回答 9查看 139.1K关注 0票数 55

我正在与一个多模块项目的错误作斗争,其结构很简单,看起来如下:

代码语言:javascript
复制
 root 
   module a
   module b
   module c
   pom.xml

使用maven命令行之后:clean sonar:sonar deploy

我有一个错误:

未能在项目X上执行目标org.sonarsource.scanner.maven:sonar-maven-plugin:3.3.0.603:sonar (默认-cli):请使用sonar.java.binaries property ->帮助1提供已编译的项目类

编辑:这是我的pom.xml的结构

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<project
    xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <groupId>groupeId</groupId>
    <artifactId>artifactId</artifactId>
    <version>version</version>
    <packaging>pom</packaging>
    <name>${project.artifactId}-parent</name>
    <description>description</description>
    <build>
        <plugins>
            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.3.0.603</version>
            </plugin>
        </plugins>
    </build>
    <modules>
        <module>module a</module>
        <module>module b</module>
        <module>module c</module>
    </modules>
</project>
EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2017-10-27 13:58:27

您正在按错误的顺序运行Maven步骤:

  • clean -删除所有以前的生成输出
  • sonar:sonar -运行分析(它需要生成输出)
  • deploy -构建等等.

试一试:

代码语言:javascript
复制
mvn clean deploy sonar:sonar

现在,如果您要反对实际上不想“部署”jar,直到/除非更改的代码通过Quality,那么.这需要一个不同的工作流:

代码语言:javascript
复制
mvn clean package sonar:sonar
// check quality gate status
// if (qualityGateOk) { deploy }

最后两个步骤的细节将取决于您的CI基础结构。但是对于詹金斯来说,第二步是有据可查

票数 70
EN

Stack Overflow用户

发布于 2018-02-24 08:06:26

在调用独立SonarQube Analysis作为Jenkins作业预构建步骤时,我也得到了相同的错误,我修正了添加sonar.java.binaries=**/target/classes和其他SonarQube分析属性的问题,如下所示:

代码语言:javascript
复制
sonar.projectKey=TEST-PROJECT
sonar.projectName=TEST-PROJECT
sonar.projectVersion=1.0
sonar.sources=src/main/java/
sonar.language=java
sonar.java.binaries=**/target/classes  
票数 53
EN

Stack Overflow用户

发布于 2019-11-26 06:08:59

我出了个问题。我在下面的步骤中添加了Invoke顶级maven目标,从构建步骤(这应该是第一个构建步骤)添加了干净安装。

还将下面的属性添加到“执行SonarQube扫描仪”下的“我的分析”属性中。

代码语言:javascript
复制
sonar.projectVersion=1.0
sonar.sources=src/main/java
sonar.sourceEncoding=UTF-8
sonar.language=java
sonar.java.binaries=target/classes
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46976567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档