使用OCLint和Sonar對iOS程式碼分析和品質管理,oclintios

來源:互聯網
上載者:User

使用OCLint和Sonar對iOS程式碼分析和品質管理,oclintios

OCLint 是一個強大的靜態程式碼分析工具,可以用來提高代碼品質,尋找潛在的bug,主要針對c,c++和Objective-c的靜態分析。

Sonar 是一個用於代碼品質管理的開放平台。通過外掛程式機制,Sonar 可以整合不同的測試載入器,程式碼分析工具,以及持續整合工具。

SonarQube安裝
1 brew install sonarqube
SonarQube漢化

漢化外掛程式

https://github.com/SonarQubeCommunity/sonar-l10n-zh

下載後放入如下目錄:

1 /usr/local/Cellar/sonarqube/6.5/libexec/extensions/plugins
Mysql安裝
1 brew install mysql

建立sonar資料庫

配置sonar串連mysql
123456 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=falsesonar.jdbc.username=rootsonar.jdbc.password=rootsonar.sorceEncoding=UTF-8sonar.login=adminsonar.password=admin
安裝xcpretty
1 gem install xcpretty
安裝OCLint
12 brew tap oclint/formulabrew install oclint
安裝sonar-scanner
1 brew install sonar-scanner
安裝sonar-objective-c-plugin

backelite-sonar-objective-c-plugin-0.6.2.jar

下載後放入如下目錄:

1 /usr/local/Cellar/sonarqube/6.5/libexec/extensions/plugins
重啟sonar
1 sonar restart

到此Sonar環境已經基本配置好了,開啟 http://127.0.0.1:9000

工程配置

run-sonar.shsonar-project.properties模板放到根目錄下, 修改.properties檔案的內容, 然後執行run-sonar.sh就可以了。檔案地址https://github.com/LeoXu92/SonarShell-iOS

最終效果

(ps.技術債累積的比較多,是時候改改了。)

遇到的問題執行sonar-scanner時提示”The rule ‘XXX’ does not exist”

在oclint在新版本版本會新增了些規則, 需要更新sonar伺服器上對應的規則列表.

先下載https://github.com/LeoXu92/sonar-objective-c代碼。

然後後在路徑: sonar-objective-c-develop/sonar-objective-c-plugin/src/main/resources/org/sonar/plugins/oclint 下的profile-oclint.xmlrules.txt這兩個檔案。添加對應的規則。

然後再執行 build-and-deploy.sh 編譯出新的jar包。

如果啟動不了SonarQube

刪除sonarqube/6.7.1/libexec/temp檔案夾重啟試試。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.