理由:因新搭建了一個項目,完成之后需要檢測代碼進行評優。
過程:
1、環境配置: IDEA 2019 + Maven3.3.9 + sonarqube7.7 + JDK1.8 + MySQL5.7
2、參考鏈接:
>>> https://blog.csdn.net/weixin_40861707/article/details/82117232 >>>https://blog.csdn.net/wojiushiwo945you/article/details/100699885https://blog.csdn.net/wojiushiwo945you/article/details/100699885
兩個結合一起查看,信息已經很全了。
3、配置過程:
sonar.propertis文件
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false sonar.jdbc.username=root sonar.jdbc.password=root sonar.sorceEncoding=UTF-8
maven setting.xml文件

<profile> <id>sonar</id> <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> <activeProfiles> <activeProfile>sonar</activeProfile> </activeProfiles>
IDEA 項目 pom.xml文件
<plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>3.1.1</version> </plugin>
4、運行命令:mvn clean install -X -Dmaven.test.skip sonar:sonar (-X可查看運行日志)
5、自己碰到的問題:
<1> sonarQube服務端安裝成功后,啟動過程中自動退出,並報錯
原因:sonarQube對數據庫和JDK不同版本的兼容性,5.6 <= MySQL版本 < 8, SQLServer > 2012
可參考https://www.cnblogs.com/xingyunblog/p/9947854.html
<1>[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.4.0.905:sonar (default-cli) on project practise: Unable to execute SonarQube:
Caused by: java.lang.UnsupportedClassVersionError: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0
原因:sonar插件版本不對。
正確:
<plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>3.1.1</version>
</plugin>
錯誤:
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>3.7.1</version> </plugin>
<2> maven編譯報錯
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project report: F
atal error compiling: 無效的標記: -parameters -> [Help 1]
原因:是maven運行編譯時使用的JDK版本不一樣導致的,這個時候需要排查一下你編輯器中項目所配置的JDK版本是什么,配置成一樣的就可以了。
另外問題:我自己的本地有兩個JDK1.7、JDK1.8,項目配置的是JDK1.8,在IDEA Terminal下運行命令,一直再報編譯錯誤,網上查詢所有的都是版本不兼容導致的,
自己檢查了所有的JDK配置:
- 編輯器中項目指定的運行、編譯JDK都更改為1.8
- 電腦環境配置也是JDK1.8
- maven配置文件setting.xml配置為1.8
IDEA中執行命令一直使用JDK1.7,在CMD DOS命令窗口執行則顯示JDK1.8,很奇怪,還沒有發現問題,索性先使用DOS執行命令。
<3> org.tmatesoft.svn.core.SVNException: svn: E175002:
原因: SVN沒有連接上。
因為我們項目開發時內外網分離,且使用的時SVN管理,所以切換到內網上就可以連接上SVN,再執行一次命令就OK了。
#手是好漢,眼是懶蛋,記錄隨筆,願有幫助#