SonarQube配置本地

1.修改本地maven的setting.xml文件

<pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
<profile>
        <id>sonar</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <sonar.host.url>http://ip:9000</sonar.host.url>
        </properties>
    </profile>

2.主程序pom中添加依赖

<build>
        <plugins>
            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.8.0.2131</version>
            </plugin>
        </plugins>
</build>

3.在管理页配置

①添加项目

将上面的复制到你的项目执行即可

附加:

jenkins创建一个流水线并构建
流水線代碼如下

pipeline {
    agent any

    tools {
        maven 'Maven3'
    }

    environment {
        NAME = 'IFTP'
        SONARQUBE_ENV = 'SonarLocal'
        JAVA_HOME = '/usr/local/jdk-21.0.7'
        PATH = "${JAVA_HOME}/bin:${env.PATH}"
    }

    stages {

        stage('Clone Source Code') {
            steps {
                git url: '带有账号密码的项目gitlab地址',
                    branch: 'dev-upgrade'
            }
        }

        stage('SonarQube Analysis') {
            steps {
                configFileProvider([configFile(fileId: 'c9d95f44-03fe-4f08-a4f4-e8fe381164e9', variable: 'MAVEN_SETTINGS')]) {
                    withSonarQubeEnv("${SONARQUBE_ENV}") {
                        sh '''
                            echo "JAVA_HOME=$JAVA_HOME"
                            which java
                            ls -l $JAVA_HOME/bin/java
                            java -version
                            mvn clean install -U
                            mvn --settings $MAVEN_SETTINGS -U sonar:sonar \
                            -Dsonar.projectKey=${NAME} \
                            -Dsonar.projectName=${NAME} \
                            -DskipTests \
                            -Dmaven.test.skip=true
                        '''
                    }
                }
            }
        }

        stage('Quality Gate') {
            steps {
                timeout(time: 1, unit: 'MINUTES') {
                    waitForQualityGate abortPipeline: true
                }
            }
        }

        stage('Archive PDF Report') {
            steps {
                sh '''
                    cp /var/jenkins_home/workspace/MTS/target/sonar/${NAME}.pdf .
                '''
                archiveArtifacts artifacts: "${NAME}.pdf", onlyIfSuccessful: true
            }
        }

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值