成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

# 在Gradle中使用阿里巴巴Java開發(fā)規(guī)約插件進行代碼檢查

Invoker / 1336人閱讀

摘要:也就是說,在不運行程序的情況下報告錯誤。此外,用戶還可以自己定義規(guī)則,檢查代碼是否符合某些特定的編碼規(guī)范。使用短寫方式運行任務輸出的檢測報告在我們定義的目錄里可以找到

在Gradle中使用阿里巴巴Java開發(fā)規(guī)約插件進行代碼檢查 概述

  最近阿里發(fā)布了《阿里巴巴Java開發(fā)手冊》,一時間無數(shù)阿里擁躉如獲武穆遺書,就在近日阿里又順便發(fā)布了<阿里巴巴java開發(fā)規(guī)約插件>,可以輕松的在碼字階段獲得相應的編碼提示,那么,在Gradle中如何應用阿里開發(fā)規(guī)約進行代碼檢查呢.且看下文.

  阿里的開發(fā)規(guī)約插件是基于PMD進行的代碼檢測,所以在Gradle應用阿里開發(fā)規(guī)約檢查只需要使用gradle提供的pmd插件即可達成目的.
目前阿里開發(fā)規(guī)約提供了如下一些規(guī)則配置,要應用這些配置只需要將他們配置到pmd的檢查規(guī)則中即可.

ali-comment.xml

ali-concurrent.xml

ali-constant.xml

ali-exception.xml

ali-flowcontrol.xml

ali-naming.xml

ali-oop.xml

ali-orm.xml

ali-other.xml

ali-set.xml

PMD介紹

  PMD(Project Manager Design)是一種開源分析Java代碼錯誤的工具。與其他分析工具不同的是,PMD通過靜態(tài)分析獲知代碼錯誤。也就是說,在不運行Java程序的情況下報告錯誤。PMD附帶了許多可以直接使用的規(guī)則,利用這些規(guī)則可以找出Java源程序的許多問題。此外,用戶還可以自己定義規(guī)則,檢查Java代碼是否符合某些特定的編碼規(guī)范。
  PMD的核心是JavaCC解析器生成器。PMD結合運用JavaCC和EBNF(擴展巴科斯-諾爾范式,Extended Backus-Naur Formal)語法,再加上JJTree,把Java源代碼解析成抽象語法樹(AST,Abstract Syntax Tree)。

以上內(nèi)容引自百度百科-PMD條目

使用
apply plugin: "java"
apply plugin: "pmd"

ext {
    p3c = "1.3.0"
}

pmd {
    consoleOutput = true
    reportsDir = file("build/reports/pmd")

    ruleSets = [
        "java-ali-comment"
    ]
}

repositories {
   jcenter()
}

dependencies {
    pmd "com.alibaba.p3c:p3c-pmd:${p3c}"
}

這里有幾個需要注意的點

gradle的pmd插件為rule都添加了默認的java-前綴,一定不要丟掉

dependencies中依賴的范圍是pmd,這樣依賴才會加到pmdClasspath中為pmd所用

關于本插件的一些其它配置可以查看 pmd插件dsl手冊

運行檢查

該插件提供了如下幾個任務

任務名稱 描述
pmdMain 檢查src/main/java下的代碼
pmdTest 檢查src/main/test下的代碼
pmdSourceSet 檢查給定范圍的代碼
check 檢查源碼和單元測試代碼

可以按照需求運行對應任務進行代碼檢查。

//使用短寫方式運行pmdMain任務
gradle pM

輸出的檢測報告在我們定義的目錄里可以找到build/reports/pmd

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://hztianpu.com/yun/67837.html

相關文章

  • IntelliJ IDEA 18 周歲,吐血推進珍藏已久的必裝插件

    摘要:代碼規(guī)約掃描插件以今年年初發(fā)布的阿里巴巴開發(fā)規(guī)約為標準,作為的插件形式存在,檢測代碼中存在不規(guī)范得位置然后給予提示。 IntelliJ IDEA是目前最好最強最智能的Java IDE,前幾天,他剛剛年滿18歲。 showImg(https://segmentfault.com/img/remote/1460000017974611);? 本文,給大家推薦幾款我私藏已久的,自己經(jīng)常使用的...

    趙春朋 評論0 收藏0
  • 阿里巴巴Java代碼規(guī)約插件p3c-pmd使用指南與實現(xiàn)解析

    摘要:年月底,阿里巴巴集團發(fā)布了阿里巴巴開發(fā)手冊終極版,年月日,在杭州云棲大會上,代碼規(guī)約插件全球首發(fā),插件支持以上版本和以上版本。阿里巴巴代碼規(guī)約插件安裝阿里代碼規(guī)約插件有插件和插件。 2017年9月底,阿里巴巴集團發(fā)布了《阿里巴巴Java開發(fā)手冊》PDF終極版,2017年10月14日,在2017杭州云棲大會上,Java代碼規(guī)約插件全球首發(fā),p3c-pmd插件支持Eclipse4.2以上版...

    worldligang 評論0 收藏0
  • 常識之外的規(guī)范——阿里java開發(fā)手冊筆記(全章節(jié))

    摘要:說明這篇文章是我第一次認真閱讀阿里巴巴開發(fā)手冊終極版的筆記。說明本手冊明確防止是調(diào)用者的責任。一年半載后,那么單元測試幾乎處于廢棄狀態(tài)。好的單元測試能夠最大限度地規(guī)避線上故障。 說明 這篇文章是我第一次(認真)閱讀《阿里巴巴 Java 開發(fā)手冊(終極版)》的筆記。手冊本身對規(guī)范的講解已經(jīng)非常詳細了,如果你已經(jīng)有一定的開發(fā)經(jīng)驗并且有良好的編碼習慣和意識,會發(fā)現(xiàn)大部分規(guī)范是符合常識的。所以...

    Martin91 評論0 收藏0
  • 為什么阿里代碼規(guī)約要求避免使用 Apache BeanUtils 進行屬性的拷貝

    摘要:于是我建議這位小伙伴使用了進行屬性拷貝,這為我們的程序挖了一個坑阿里代碼規(guī)約當我們開啟阿里代碼掃描插件時,如果你使用了進行屬性拷貝,它會給你一個非常嚴重的警告。大名鼎鼎的提供的包,居然會存在性能問題,以致于阿里給出了嚴重的警告。 聲明:本文屬原創(chuàng)文章,始發(fā)于公號:程序員自學之道,并同步發(fā)布于 https://blog.csdn.net/dadiyang,特此,同步發(fā)布到 sf,轉載請注...

    raledong 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<