Android Studio Jenkins集成Findbugs

Android Studio Jenkins集成Findbugs

Android Studio 集成Findbugs步驟:

? 一 丶 先在app目錄下的gradle里面引用

apply plugin: 'findbugs'

? 二丶添加一個(gè)findbugs方法



task findbugs(type: FindBugs, dependsOn: "assembleRelease") {

ignoreFailures = true

effort = "default"

reportLevel = "medium"

//過(guò)濾器

excludeFilter = new File("${project.rootDir}/findbug_filter.xml")

//這里填寫(xiě)項(xiàng)目classes目錄

classes = files("${project.rootDir}/CarshareTld/build/intermediates/javac/release/compileReleaseJavaWithJavac/classes")

source = fileTree('src/main/java')

classpath = files()

reports {

//只能開(kāi)啟一個(gè)

xml.enabled = true

html.enabled = false

}

}

(注意:dependsOn : 這后面內(nèi)容填寫(xiě)需要打包或者執(zhí)行的包樣式,比如類(lèi)型:


assembleDebug

assembleRelease

assembleAndroidTest

? ? excludeFilter 一個(gè)過(guò)濾器,過(guò)濾一些R文件,資源文件等,需要你在自己Project的根目錄下添加一個(gè) findbug_flter.xml? ,里面的內(nèi)容如下:


<?xml version="1.0" encoding="UTF-8"?>

<FindBugsFilter>

<Match>

<!-- ignore all issues in resource generation -->

<Class name="~.*\.R\$.*"/>

</Match>

<Match>

<Class name="~.*\.Manifest\$.*"/>

</Match>

<Match>

<Class name="~.*\.*Test" />

<!-- test classes are suffixed by 'Test' -->

<Not>

<Bug code="IJU" /> <!-- 'IJU' is the code for bugs related to JUnit test code -->

</Not>

</Match>

</FindBugsFilter>

? 詳細(xì)過(guò)濾內(nèi)容,可以自己根據(jù)自己的有關(guān)要求;

? classes 目錄,填寫(xiě)位置,后面拼接的是你項(xiàng)目build下的classes文件目錄路徑,需要你自己查找索引路徑,一定不能填錯(cuò),不然會(huì)執(zhí)行不成功,

? 最后關(guān)鍵注意點(diǎn),reports 它下面有個(gè) xml 跟 html 開(kāi)關(guān),在本地執(zhí)行的時(shí)候,你設(shè)置 html 開(kāi)關(guān)為 true,xml 為 fasle,反之,在你上傳代碼到 jenkins 上的時(shí)候,則需要把 xml 改完true,html 改為 false)

在Android Studio上的基本流程已經(jīng)完成了,然后在jenkins的項(xiàng)目配置里配置相關(guān)的內(nèi)容

三丶打開(kāi) jenkins 項(xiàng)目里面的配置


找到構(gòu)建,在構(gòu)建Tasks 里面添加一個(gè) findbugs

然后在構(gòu)建后操作里面添加一個(gè) Publish FindBugs analysis results ,


填寫(xiě)你在Android Studio的項(xiàng)目里reports的根目錄路徑后追加findbugs/*.xml

最終大功告成,應(yīng)用保存退出。然后喝茶。查看你的bug吧~~

?Android Studio Jenkins集成Findbugs

Android Studio 集成Findbugs步驟:

? ?一 丶 先在app目錄下的gradle里面引用

applyplugin:'findbugs'

? 二丶添加一個(gè)findbugs方法?


task findbugs(type: FindBugs,dependsOn:"assembleRelease") {

ignoreFailures =true

effort ="default"

reportLevel ="medium"

//過(guò)濾器

excludeFilter =new File("${project.rootDir}/findbug_filter.xml")

//這里填寫(xiě)項(xiàng)目classes目錄

classes = files("${project.rootDir}/CarshareTld/build/intermediates/javac/release/compileReleaseJavaWithJavac/classes")

source = fileTree('src/main/java')

classpath = files()

reports {

//只能開(kāi)啟一個(gè)

xml.enabled =true

html.enabled =false

}

}

(注意:dependsOn : 這后面內(nèi)容填寫(xiě)需要打包或者執(zhí)行的包樣式,比如類(lèi)型:


assembleDebug

?assembleRelease?

assembleAndroidTest

? ? ?excludeFilter 一個(gè)過(guò)濾器,過(guò)濾一些R文件,資源文件等,需要你在自己Project的根目錄下添加一個(gè) findbug_flter.xml? ,里面的內(nèi)容如下:


<?xml version="1.0" encoding="UTF-8"?>


<Class name="~.*\.R\$.*"/>

<Class name="~.*\.Manifest\$.*"/>

<Class name="~.*\.*Test" />


<Bug code="IJU" />

</FindBugsFilter>

? ?詳細(xì)過(guò)濾內(nèi)容,可以自己根據(jù)自己的有關(guān)要求;

classes 目錄,填寫(xiě)位置,后面拼接的是你項(xiàng)目build下的classes文件目錄路徑,需要你自己查找索引路徑,一定不能填錯(cuò),不然會(huì)執(zhí)行不成功,

??最后關(guān)鍵注意點(diǎn),reports 它下面有個(gè) xml 跟 html 開(kāi)關(guān),在本地執(zhí)行的時(shí)候,你設(shè)置 html 開(kāi)關(guān)為 true,xml 為 fasle,反之,在你上傳代碼到 jenkins 上的時(shí)候,則需要把 xml 改完true,html 改為 false)

在Android Studio上的基本流程已經(jīng)完成了,然后在jenkins的項(xiàng)目配置里配置相關(guān)的內(nèi)容?

三丶打開(kāi) jenkins 項(xiàng)目里面的配置


?找到構(gòu)建,在構(gòu)建Tasks 里面添加一個(gè) findbugs?

然后在構(gòu)建后操作里面添加一個(gè) Publish FindBugs analysis results ,

填寫(xiě)你在Android Studio的項(xiàng)目里reports的根目錄路徑后追加findbugs/*.xml

最終大功告成,應(yīng)用保存退出。然后喝茶。查看你的bug吧~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容