当前位置: 首页>数据库>正文

sonarqube扫描提示java版本不符合 sonarqube不支持mysql

核心注意点:

 

SonarQube是一个Java应用,自SonarQube的7.9版本开始放弃支持MySQL数据库,8.3.1版本下只支持内存模式、PostgreSQL、Microsoft SQL Server和Oracle四种存储引擎

 

1. SonarQube 7.9 需要安装JDK11+

 

  1. SonarQube 7.9 开始正式不支持MySQL

 

  1. Sonarqube6.7.6版本不匹配mysql5.7版本
  2. 官方文档要求sonarqube的版本在6.7以上,才可兼容Findbugs插件.

 

准备工作:

 

1、jdk

 

2、sonarqube:http://www.sonarqube.org/downloads/

 

3、https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/

 

4、mysql数据库

 

 

1 安装sonarqube

 

下载后解压打开bin目录,启动相应OS目录下的StartSonar.bat(根据自己的机器来选择) 如下图

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_mysql,第1张

 

  1. 启动浏览器,访问http://localhost:9000,如出现下图则表示安装成功。

 

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_maven_02,第2张

2、安装数据库(请参考https://www.jb51.net/article/82399.htm)

 

3、打开mysql,新建一个数据库 如sonar。

4、打开sonarqube安装目录下的D:\sonar\sonarqube-5.3\sonarqube-5.3\conf\sonar.properties

5、在mysql5.X节点下输入以下信息

sonar.jdbc.url=jdbc:mysql://172.16.30.228:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

 

url是数据库连接地址,username是数据库用户名,jdbc.password是数据库密码,login是sonarqube的登录名,sonar.password是sonarqube的密码

 

6、重启sonarqube服务,等待两分钟左右 再次访问http://localhost:9000,因为要初始化数据库信息

7、打开D:\sonar\sonar-scanner-2.5\conf\sonar-scanner.properties文件

8、配置如下

sonar.jdbc.url=jdbc:mysql://172.16.30.228:3306/qjfsonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=root

 

注意:如果测试项目与服务器不在同一台机子,则需要添加服务器的IP:

sonar.host.url=http://XXX.XXX.XXX.XXX:9000

 

 

9、配置环境变量

a.新建变量name=SONAR_SCANNER_HOME value=D:\sonar\sonar-scanner-2.5

b.打开path,追加%SONAR_SCANNER_HOME%\bin;

c.命令行执行 sonar-scanner -version,出现以下信息,则表示环境变量设置成功

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_bc_03,第3张

 

 

10、新建配置文件sonar-project.properties

 

打开要进行代码分析的项目根目录,新建sonar-project.properties文件

 

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_maven_04,第4张

 

示例如下

 

sonar.projectKey=xgfe
sonar.projectName=xgfe
sonar.projectVersion=1.1
sonar.sources=src
sonar.binaries=target\classes
sonar.language=java
sonar.sourceEncoding=UTF-8
 
#projectKey是项目的唯一标识,不能出现重复,可随意起
# projectName即项目名称
# projectVersion项目的版本号
# sources为源码目录
# binaries为编译后的classes目录,这个目录要注意一下,如果都在bin下面或者目录还有很多层级才到classe目录,可以直接为sonar.binaries=bin,sonar会自动遍历所有目录
# language为分析的语言
# sourceEncoding源码编码格式

 

11、启动StartSonar.bat服务,并以管理员的身份启动一个cmd命令窗口,cd命令进入项目的根路径下,执行命令:sonar-scanner,开始对你的代码进行质量审核

 

 

12、之后访问http://localhost:9000/, 并进行登录admin/admin,即可查看代码审查结果信息

 

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_mysql_05,第5张

 

13、SonarQube支持Gradle、Maven、Ant等多种方式的扫描,我们以Maven为例。

 

 

<pluginGroups>
        <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
    </pluginGroups>
 
 
<profile>
      <id>sonar</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
        <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url>
        <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
        <sonar.jdbc.username>root</sonar.jdbc.username>
        <sonar.jdbc.password>root</sonar.jdbc.password>
        <sonar.host.url>http://localhost:9000</sonar.host.url>
      </properties>
</profile>

 

配置完毕之后需要根据之前说的那样将SonarQube重启。

 

14、扫描maven工程

上面已经配置好了maven环境变量,然后在需要扫描的项目路径下执行以下maven命令,即可扫描项目代码:

 

 mvn clean compile sonar:sonar

 

 

如果云心报错如下 默认版本过高

 

 

sonarqube扫描提示java版本不符合 sonarqube不支持mysql,sonarqube扫描提示java版本不符合 sonarqube不支持mysql_maven_06,第6张

请在pom.xml中添加如下

<plugin>
    <groupId>org.sonarsource.scanner.maven</groupId>
     <artifactId>sonar-maven-plugin</artifactId>
     <version>3.2</version>
    </plugin>



https://www.xamrdz.com/database/6xx1960810.html

相关文章: