更新時間:2021-10-28 11:26:24 來源:動力節(jié)點(diǎn) 瀏覽2964次
Java代碼檢查工具有很多,小編來給大家進(jìn)行介紹:

這是一個很好的提高軟件質(zhì)量的工具(Eclipse 插件)。它具有下一個關(guān)鍵特性:代碼分析、JUnit 測試生成、JUnit 測試編輯器、類似代碼分析、指標(biāo)、代碼覆蓋率和依賴關(guān)系分析。
它掃描 Java 源代碼并查找潛在問題:可能的錯誤、死代碼、次優(yōu)代??碼、過度復(fù)雜的表達(dá)式和重復(fù)代碼。
它查找 Java 程序中的錯誤。它可以檢測各種常見的編碼錯誤,包括線程同步問題、API 方法的濫用等。
它是一個免費(fèi)的 Java 工具,用于計算測試訪問的代碼百分比。它可用于識別 Java 程序的哪些部分缺乏測試覆蓋率。它基于jcoverage。
是一個基于字節(jié)碼插裝的快速Java代碼覆蓋工具。它與現(xiàn)有工具的不同之處在于,它支持對大型企業(yè)軟件項目進(jìn)行覆蓋分析,同時強(qiáng)調(diào)快速的個人開發(fā)。
它是一種幫助程序員編寫符合編碼標(biāo)準(zhǔn)的 Java 代碼的開發(fā)工具。
JBoss Tattletale 是一種工具,可以幫助您大致了解您正在從事的項目或您依賴的產(chǎn)品。該工具將遞歸掃描 JAR 文件的目錄并生成鏈接和格式化的 HTML 報告。
UCDetector(Unecessary Code Detector)是一個開源的eclipse插件工具,用于查找不必要的(死的)java代碼。它還嘗試使代碼成為最終的、受保護(hù)的或私有的。UCDetector 還發(fā)現(xiàn)類之間的循環(huán)依賴。
Sonar 是Java 應(yīng)用程序的持續(xù)質(zhì)量控制工具。它在生活中的基本目的是加入您現(xiàn)有的持續(xù)集成工具,將您的所有開發(fā)項目置于質(zhì)量控制之下。
XRadar 是一種開放的可擴(kuò)展代碼報告工具,可生成系統(tǒng)當(dāng)前狀態(tài)和隨時間發(fā)展的 HTML/SVG 報告。使用 DependencyFinder、JDepend、PMD、PMD-CPD、JavaNCSS、Cobertura、Checkstyle、XSource、JUnit、Java2HTML、ant 和 maven。
QALab 整合來自 Checkstyle、PMD、FindBugs 和 Simian 的數(shù)據(jù),并將其顯示在一個整合的視圖中。QALab 會跟蹤隨時間發(fā)生的變化,從而讓您可以查看隨時間變化的趨勢。您可以根據(jù)天氣情況判斷違規(guī)次數(shù)的增加或減少——基于每個文件,或針對整個項目。它還繪制了這些數(shù)據(jù)的圖表。QALab 插入到 maven 或 ant。
Clirr 是一種工具,用于檢查 Java 庫與舊版本的二進(jìn)制和源代碼兼容性?;旧夏憬o它兩組 jar 文件,然后 Clirr 轉(zhuǎn)儲出公共 api 中的更改列表。如果檢測到不兼容的 api 更改,可以將 Clirr Ant 任務(wù)配置為中斷構(gòu)建。在持續(xù)集成過程中,Clirr 可以自動防止意外引入二進(jìn)制或源代碼兼容性問題。
JDiff 是一個 Javadoc doclet,當(dāng)比較兩個 API 時,它會生成包含以任何方式刪除、添加或更改的所有包、類、構(gòu)造函數(shù)、方法和字段的 HTML 報告,包括它們的文檔。這對于準(zhǔn)確描述產(chǎn)品的兩個版本之間發(fā)生的變化非常有用。僅比較每個版本的 API(應(yīng)用程序編程接口)。它不會比較源代碼在執(zhí)行時所做的事情。
它通過進(jìn)行數(shù)據(jù)流分析和構(gòu)建鎖圖來檢查您的 Java 代碼并發(fā)現(xiàn)錯誤、不一致和同步問題。
JDepend 遍歷 Java 類文件目錄并為每個 Java 包生成設(shè)計質(zhì)量指標(biāo)。JDepend 允許您在可擴(kuò)展性、可重用性和可維護(hù)性方面自動衡量設(shè)計的質(zhì)量,以有效管理和控制包依賴性。
cloc 計算許多編程語言中源代碼的空行、注釋行和物理行。
Dependometer 對軟件系統(tǒng)內(nèi)的物理依賴性進(jìn)行靜態(tài)分析。Dependometer 根據(jù)將系統(tǒng)構(gòu)建為類、包、子系統(tǒng)、垂直切片和層的邏輯架構(gòu)來驗證依賴關(guān)系,并檢測這些結(jié)構(gòu)元素之間的循環(huán)。此外,它計算不同抽象層上的許多質(zhì)量指標(biāo),并報告任何違反配置閾值的情況。
Hammurapi 是一個開源代碼檢查工具。它的發(fā)布附帶了 100 多個檢查員,他們檢查代碼的不同方面:符合 EJB 規(guī)范、線程問題、編碼標(biāo)準(zhǔn)等等。
JavaNCSS 是一個簡單的命令行實用程序,它測量 Java 編程語言的兩個標(biāo)準(zhǔn)源代碼指標(biāo)。為每個類和/或每個功能全局收集度量。
DCD 在您的 Java 應(yīng)用程序中查找死代碼。
Classycle 的 Analyzer 分析 Java 應(yīng)用程序或庫中的靜態(tài)類和包依賴關(guān)系。它對于查找類或包之間的循環(huán)依賴關(guān)系特別有用。Classycle 類似于 JDepend,后者也進(jìn)行依賴項分析,但僅在包級別進(jìn)行。
程序 ckjm通過處理編譯的 Java 文件的字節(jié)碼來計算 Chidamber 和 Kemerer 面向?qū)ο蟮亩攘?。該程序為每個類計算 Chidamber 和 Kemerer 提出的以下六個指標(biāo)。
Jameleon 是一個自動化測試框架,技術(shù)和非技術(shù)用戶都可以輕松使用。Jameleon 背后的一個主要概念是創(chuàng)建一組代表應(yīng)用程序不同屏幕的關(guān)鍵字或標(biāo)簽。自動化每個特定屏幕所需的所有邏輯都可以在 Java 中定義并映射到這些關(guān)鍵字。然后可以使用不同的數(shù)據(jù)集組織關(guān)鍵字以形成測試腳本,而無需深入了解應(yīng)用程序的工作原理。然后使用測試腳本來自動化測試并生成手動測試用例文檔。
DoctorJ 在以下功能領(lǐng)域分析 Java 代碼:文檔驗證、統(tǒng)計生成和語法分析。
Macker 是面向 Java 開發(fā)人員的構(gòu)建時架構(gòu)規(guī)則檢查實用程序。它旨在為程序員總是為他們的項目夢想的架構(gòu)理想建模,然后打破——它有助于保持代碼干凈和一致。您可以定制一個規(guī)則文件以適應(yīng)特定項目的結(jié)構(gòu),或者為您的代碼編寫一些通用的“良好實踐”規(guī)則。Macker 不會試圖把其他人的規(guī)則塞進(jìn)你的喉嚨;它很靈活,編寫規(guī)則文件是每個獨(dú)特項目開發(fā)過程的一部分。
Squale 是一個質(zhì)量測量平臺,它允許分析多語言軟件應(yīng)用程序,以便對其質(zhì)量進(jìn)行清晰而全面的描述:高層管理人員的高級因素和開發(fā)團(tuán)隊的實用指標(biāo)。
免費(fèi)軟件程序 SourceMonitor 可讓您查看軟件源代碼內(nèi)部,以了解您擁有多少代碼并確定模塊的相對復(fù)雜性。例如,您可以使用 SourceMonitor 來識別最有可能包含缺陷并因此需要正式審查的代碼。
Panopticcode 項目提供了一套開源工具,用于收集、關(guān)聯(lián)和顯示代碼指標(biāo)。
為Eclipse 平臺提供指標(biāo)計算和依賴分析器插件。用平均偏差和標(biāo)準(zhǔn)偏差測量各種指標(biāo),并檢測包和類型依賴項中的循環(huán)并繪制它們。
QJ-Pro 是一款面向軟件開發(fā)人員的綜合軟件檢查工具。開發(fā)人員可以在編寫程序時自動檢查他們的 Java 源代碼并提高他們的 Java 編程技能。QJ-Pro 提供了描述性 Java 模式,解釋了容易出錯的代碼結(jié)構(gòu)并為其提供了解決方案。
Byecycle 是一個自動排列的Eclipse 依賴分析插件。它的目標(biāo)是當(dāng)你看到糟糕的代碼時讓你感到惡心,當(dāng)你看到好的代碼時讓你感到高興。
Coqua 測量了 5 個不同的 Java 代碼質(zhì)量指標(biāo),為管理人員提供了概述和歷史記錄,并為開發(fā)人員提供了深入代碼的詳細(xì)視圖??梢詾槊總€團(tuán)隊定義指標(biāo)。非常適合大中型和/或海上項目。
從大多數(shù) Java 編譯器生成的 Java 類文件中提取依賴項和 OO 指標(biāo)。
Jalopy 是一種易于配置的源代碼格式化程序,它可以檢測和修復(fù)可能出現(xiàn)在 Java 代碼中的許多代碼約定缺陷。Jalopy 與其說是代碼檢查器,不如說是代碼修復(fù)器。Jalopy 插件適用于大多數(shù) IDE,并且在大多數(shù)情況下,它們與 IDE 無縫銜接。
JarAnalyzer 是一個 .jar 文件的依賴管理工具。JarAnalyzer 將分析給定目錄中的所有 .jar 文件并確定每個文件之間的依賴關(guān)系。輸出格式包括 xml(包含將其轉(zhuǎn)換為 html 的樣式表)和 GraphViz DOT(允許您生成顯示 .jar 文件之間關(guān)系的可視組件圖)。xml 輸出包括重要的設(shè)計指標(biāo),例如傳入和傳出耦合、抽象性、不穩(wěn)定性和距離。還有一個 Ant 任務(wù)可用,它允許您將 JarAnalyzer 作為構(gòu)建腳本的一部分。
Condenser 是一種用于查找和刪除重復(fù) Java 代碼的工具。與只定位重復(fù)代碼的工具不同,Condenser 的目標(biāo)是在安全的地方自動刪除重復(fù)代碼。
Relief 為 Java 項目提供了新的面貌。依靠我們通過檢查它們的形狀、大小或在空間中的相對位置來處理真實對象的能力,它提供了關(guān)于 java 包、類型和字段及其關(guān)系的“物理”視圖,使它們更容易處理。讓我們快速討論我們?nèi)绾谓忉屛锢韺傩砸约八绾螏椭覀冋莆枕椖刻卣鳌?/p>
JCSC 是一個強(qiáng)大的工具,可以根據(jù)高度可定義的編碼標(biāo)準(zhǔn)和潛在的不良代碼檢查源代碼。該標(biāo)準(zhǔn)涵蓋了類、接口、字段、參數(shù)等的命名約定。還可以定義類型(類/接口)的結(jié)構(gòu)布局。就像放置字段的位置一樣,在方法之前或之后以及以什么順序。順序可以通過可見性或類型(實例、類、常量)來定義。這同樣適用于方法。這些規(guī)則中的每一個都是高度可定制的。通過定義在代碼中放置空格的位置以及何時使用大括號來增強(qiáng)可讀性。正確的JavaDoc 的存在可以被強(qiáng)制執(zhí)行和不同級別。除此之外,它還發(fā)現(xiàn)了代碼中的弱點(diǎn)——潛在的錯誤——比如空的 catch/finally 塊、沒有默認(rèn)值的 switch、拋出“異常”類型、緩慢的代碼。
Spoon 是一個完全支持 Java 5 的 Java 程序處理器。它提供了一個完整的、細(xì)粒度的 Java 元模型,可以訪問任何程序元素(類、方法、字段、語句、表達(dá)式……)以進(jìn)行讀取和修改。Spoon 可用于驗證目的,通過使用純 Java 模板引擎來確保您的程序遵守某些編程約定或準(zhǔn)則,或用于程序轉(zhuǎn)換。
Lint4j('Lint for Java')是一個靜態(tài)Java源代碼和字節(jié)碼分析器,它檢測鎖定和線程問題、性能和可擴(kuò)展性問題,并通過執(zhí)行類型、數(shù)據(jù)流和鎖圖來檢查Java序列化等復(fù)雜契約分析。
Crap4j 是 CRAP(變更風(fēng)險分析和預(yù)測)軟件指標(biāo)的 Java 實現(xiàn) - 一個溫和的指標(biāo)名稱,可幫助保護(hù)您免受真正令人反感的代碼的侵害。
Java PathFinder (JPF) 是一個驗證可執(zhí)行Java 字節(jié)碼程序的系統(tǒng)。在其基本形式中,它是一個 Java 虛擬機(jī) (JVM),用作顯式狀態(tài)軟件模型檢查器,系統(tǒng)地探索程序的所有潛在執(zhí)行路徑,以查找違反屬性的行為,例如死鎖或未處理的異常。與傳統(tǒng)調(diào)試器不同,JPF 報告導(dǎo)致缺陷的整個執(zhí)行路徑。JPF 特別適合在多線程程序中查找難以測試的并發(fā)缺陷
Soot 可用作優(yōu)化或檢查類文件的獨(dú)立工具,也可用作開發(fā) Java 字節(jié)碼優(yōu)化或轉(zhuǎn)換的框架。
Java 版本 2 的擴(kuò)展靜態(tài)檢查器 (ESC/Java2) 是一種Java編程工具,它試圖通過對程序代碼及其形式注釋的靜態(tài)分析來查找?guī)в?JML 注釋的 Java 程序中常見的運(yùn)行時錯誤。用戶可以通過使用稱為 pragma 的特殊格式注釋注釋他們的程序來控制 ESC/Java2 執(zhí)行的檢查數(shù)量和類型。
Java實驗班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

初級 202925

初級 203221

初級 202629

初級 203743