景德镇陶瓷企业网站建设,毕节网站建设推广,wordpress 多语言切换,如何做农产品网站文章目录 前言一、docker方式安装sonar二、启动容器三、创建数据库四、启动sonarqube五、访问sonar六、如果访问报错-通过sonar日志定位问题七、修改密码八、汉化#xff08;看个人选择#xff09;九、扫描十、我遇到的Sonar报错以及解决办法 总结 前言
这是2024新版SonarQu… 文章目录 前言一、docker方式安装sonar二、启动容器三、创建数据库四、启动sonarqube五、访问sonar六、如果访问报错-通过sonar日志定位问题七、修改密码八、汉化看个人选择九、扫描十、我遇到的Sonar报错以及解决办法 总结 前言
这是2024新版SonarQubeJenKinsGithub联动代码扫描专题的第二部分也是核心内容SonarQube目前是半开源可以自定义漏洞扫描规则这个后面有时间可以出一篇教程本文主要是讲2024最新版的配置和如何进行代码扫描。 提示以下是本篇文章正文内容下面案例可供参考
一、docker方式安装sonar
经过实践最方便的还是docker安装简单又快捷可以节省很多时间。依次输入两条命令
docker pull postgres:latestdocker pull sonarqube二、启动容器
docker run --name db -p 5432:5432 -e POSTGRES_USERsonar -e POSTGRES_PASSWORDsonar -d postgres三、创建数据库
进入容器命令
docker exec -it db /bin/bash进入postgres命令行
psql -U sonar创建sonar数据库:
create database sonar;给sonar授权:
alter role sonar createdb;alter role sonar superuser;alter role sonar createrole;更改sonar数据库拥有者(这一步是必须的否则会sonarqube会连接失败):
alter database sonar owner to sonar;退出postgres命令行:
\p退出docker进入linux命令行
exit一套操作下来就完成安装了。这都是踩过很多坑才总结出来0报错又快又简单的方法我很惨的。
四、启动sonarqube
docker run --name sq -e sonar.jdbc.passwordsonar -e sonar.jdbc.usernamesonar -e sonar.jdbc.urljdbc:postgresql://postgres/sonar --link db:postgres -p 9000:9000 -d sonarqube五、访问sonar
启动成功后登录ip:9000端口就可以访问了 默认账号密码:admin
六、如果访问报错-通过sonar日志定位问题
docker logs -f -t --tail100 容器ID七、修改密码 八、汉化看个人选择
插件市场搜索chinese然后下载即可。
然后sonar会弹出重启服务的按钮点击就行。刷新后就会变成中文版。
九、扫描
新建项目显示名可以随意填写能够清晰理解即可
点击下一步-使用全局设置-创建projects
选择本地后创建令牌然后选择Maven或者其他我选择的是Maven的
有一个执行SonarQube扫描的命令直接进入到项目的根目录用这条命令运行即可如果不加sudo可能会报错所以建议大家加上sudo sudo mvn clean verify sonar:sonar -Dsonar.projectKeyzangccJavaDemo -Dsonar.projectName‘zangccJavaDemo’ -Dsonar.host.url -Dsonar.token
记得在运行上面命令之前切换好当前的jdk版本根据项目的jdk来决定 切换好jdk之后再运行扫描命令即可
命令运行成功会显示BUILD SUCCESS否则运行失败。Sonarqube的主界面会自动刷新显示扫描的结果
十、我遇到的Sonar报错以及解决办法
问题1[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin::sonar (default-cli) on project cmdb-nettopo-ftp-c1bb-connector: Execution default-cli of goal org.sonarsource.scanner.maven:sonar-maven-plugin::sonar failed: An API incompatibility was encountered while executing org.sonarsource.scanner.maven:sonar-maven-plugin::sonar: java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
解决办法 mvn命令前添加sudo即可解决还有就是记得对应好当前命令终端的jdk版本。
问题2报错“maven 打包 不再支持源选项 5。请使用 7 或更高版本”。 解决办法这是由于没有指定java的版本造成的。我们可以在pom.xml中添加如下的属性。
properties!-- 这里的{jdk_version}填入你的jdk版本我使用的是openjkd14 --maven.compiler.target{jdk_version}/maven.compiler.targetmaven.compiler.source{jdk_version}/maven.compiler.source
/properties也可以在原本pom.xml文件中修改java.version
问题3报错Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2 解决办法是因为 maven-war-plugin:2.2这个插件版本太低导致将项目打成war包失败了然后在pom.xml文件中引入更新版本的插件项目就能正常安装了。到此问题解决。
plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-war-plugin/artifactIdversion3.2.1/version
/plugin总结
JenKins安装与配置是SonarQubeJenKinsGithub联动代码扫描的第二步。完整内容为
2024新版SonarQubeJenKinsGithub联动代码扫描1-JenKins安装与配置.
2024新版SonarQubeJenKinsGithub联动代码扫描2-SonarQube代码扫描.
2024新版SonarQubeJenKinsGithub联动代码扫描3-三者联动配置最终章.
欢迎大家关注EureKaSec无论是技术交流还是有兴趣加入我们团队都欢迎随时联络沟通。 文章原创欢迎转载请注明文章出处 2024新版SonarQubeJenKinsGithub联动代码扫描2-SonarQube代码扫描.。百度和各类采集站皆不可信搜索请谨慎鉴别。技术类文章一般都有时效性本人习惯不定期对自己的博文进行修正和更新因此请访问出处以查看本文的最新版本。