`
hekuilove
  • 浏览: 158688 次
  • 性别: Icon_minigender_1
  • 来自: 魔都
社区版块
存档分类
最新评论

Eclipse插件之Findbugs

阅读更多
描述:
程序员(特别是初级程序员)在开发过程中,程序bug往往是不可避免的。如何提高代码质量,找到并解决一些低级bug,Findbugs或许可以为你排忧解难。看Findbugs官网对其的描述:A static analysis tool to find bugs in Java programs.一款用Java语言开发的静态分析工具用来找bug(翻译不好别吐槽)


安装:
普通的Eclipse插件安装 
Help>Install new Software...>Add... 然后输入Name:findbugs  Location:http://findbugs.cs.umd.edu/eclipse>OK>选中FindBugs复选框点击Next>....(到这步还不会就去自杀吧)完了restart Eclipse即可完成安装


使用
选择一个你自己的工程,右键>FindBugs>FindBugs 这样插件就会自动去找代码里可能存在风险了

如果你的工程里有风险,工程名会变成project_name(12) 表示你的工程里可能存在12个风险 ,一层一层打开可以找到具体的风险,每个包名和类名上都会存在这个小括号

风险的代码,会在Eclipse代码显示窗口的左边,也就是显示代码行数的地方出现一个臭虫




我为了测试bug,我创建了一个名为findbugs_example的Java工程,写了一个存在风险的类

package org.quinn.example;

import java.sql.Connection;
import java.sql.SQLException;

public class Test2 {

        public Connection con = null;

        void executeUpd(String sql) {
                try {
                        this.con.prepareStatement(sql);
                } catch (SQLException e) {
                        e.printStackTrace();
                } finally {
                        try {
                                con.close();
                        } catch (SQLException e) {
                                e.printStackTrace();
                        }
                }
        }

}



对于编码习惯不好的人或者新手,代码的比较不容易看出来

右键findbugs_example开始找风险,提示我的工程有两个风险,点进去发现两个黄色臭虫




findbugs不同颜色的臭虫对应的bug级别也不相同
  黑色:分类
  红色:严重bug
  黄色:警告

分析一下上面的代码
   第一个臭虫,创建了一个con并赋初值为null,这种做法实际上是不推荐的,其他引用的地方可能会有空指针,另外从内存的角度考虑性能也是很低的,Java需要对改对象重新赋值,即改变引用地址的操作。

  第二个臭虫,毫无疑问是空指针异常,我并未对赋了初值的conn设置值,使用该对象的时候自然会抛出NullPointException

我把上面的代码改变一下

package org.quinn.example;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Test2 {

        public Connection con;

        void executeUpd(String sql) {
                try {
                        con = DriverManager.getConnection("");
                } catch (SQLException e1) {
                        e1.printStackTrace();
                }
                try {
                        if (this.con != null)
                                this.con.prepareStatement(sql);
                } catch (SQLException e) {
                        e.printStackTrace();
                } finally {
                        try {
                                if (this.con != null)
                                        con.close();
                        } catch (SQLException e) {
                                e.printStackTrace();
                        }
                }
        }

}



再次用Findbugs寻找风险,提示工程已无风险

注意:Findbugs提示无风险并不代表你的工程就真的没有bug了,Findbugs并不能智能的找到所有的bug,你的代码最终还是得以测试的结果为准。Findbugs为你做的仅仅是找到一些比较简单的风险
  • 大小: 36.1 KB
11
3
分享到:
评论
3 楼 forlab 2015-07-24  
花架构威武吧唧,一统江湖
2 楼 sheep3600 2014-05-22  
不错噢,review的时候可以用用。
1 楼 敲代码的小女孩 2014-05-21  
不好意思,刚点错了,可以删除吗... 

相关推荐

    eclipse插件findbugs

    Eclipse 插件 FindBugs 是一款用于静态代码分析的工具,它可以帮助开发者在程序运行前发现潜在的错误和不良编程习惯。FindBugs 能够检查 Java 代码,并识别出可能的问题,如空指针异常、未初始化的变量、线程安全...

    findbugs 最新eclipse插件

    **findbugs最新Eclipse插件**是用于静态代码分析的工具,它可以帮助开发者在编码阶段发现潜在的错误和不良编程习惯。FindBugs是开源项目,由University of Maryland开发并维护,广泛应用于Java应用程序的质量保证...

    eclipse插件findBugs

    "Eclipse插件FindBugs"是一个用于静态代码分析的强大工具,旨在帮助开发者在运行程序之前发现潜在的bug和代码质量问题。Eclipse是一个广泛使用的Java集成开发环境(IDE),而FindBugs插件则为其增添了一个重要的功能...

    findbugs应用eclipse的插件

    findbugs 代码检查 eclipse插件 3.0.0版本

    Eclipse插件_FindBugs

    安装方法: 下载文件后,解压edu.umd.cs.findbugs.plugin.eclipse_1.3.5.20080913内文件至Eclipse安装目录下的plugins文件夹,重启Eclipse。

    eclipse中findbugs插件

    FindBugs插件是将FindBugs工具集成到Eclipse中的一个扩展,使得用户在开发过程中可以方便地检查代码问题。 安装FindBugs插件的过程相对简单。首先,你需要下载`edu.umd.cs.findbugs.plugin.eclipse_3.0.1.20150306-...

    findbugs eclipse插件

    **findbugs eclipse插件** 是一个非常重要的工具,主要用于帮助开发者在Eclipse集成开发环境中发现潜在的代码问题和错误。FindBugs是一款静态代码分析工具,它可以分析Java代码,找出可能存在的bug、不良编程习惯...

    Eclipse FindBugs插件安装指南

    ### Eclipse FindBugs 插件安装指南 #### 一、引言 在软件开发过程中,确保代码质量至关重要。为了提高代码质量和程序的稳定性,开发者常常借助于静态代码分析工具来帮助发现潜在的问题。FindBugs 正是一款广受...

    eclipse插件 findBugs 最新版

    **Eclipse插件FindBugs详解** FindBugs是一款强大的静态代码分析工具,专为Java开发者设计,用于在代码执行前检测潜在的错误和不良编程习惯。它通过深入解析字节码来查找可能的问题,而无需实际运行程序。Eclipse...

    android eclipse 插件 findbugs 3.0 linux

    **Android与Eclipse插件FindBugs 3.0在Linux环境中的应用** FindBugs是一款强大的静态代码分析工具,专用于检测Java程序中的潜在错误和不良编程实践。在Android开发环境中,它作为Eclipse插件,能为开发者提供一个...

    详解eclipse插件findbugs新规则的开发过程

    《详解Eclipse插件FindBugs新规则的开发过程》 在软件开发中,代码质量是衡量项目健康度的重要指标之一。FindBugs是一款强大的静态代码分析工具,它能够检测Java代码中的潜在错误,帮助开发者在运行时之前发现并...

    eclipse插件FindBugs错误分析说明

    Eclipse插件FindBugs是一个静态代码分析工具,它通过扫描Java代码,检测程序中的潜在bug、代码异味以及不符合编码规范的地方。以下是一些常见FindBugs错误的解释和修改建议。 1. EC_UNRELATED_TYPESBug 错误描述:...

    eclipse插件findbugs(两个版本)

    这个压缩包包含FindBugs插件的两个不同版本,分别是1.3.9和3.0.1,适用于Eclipse用户,帮助他们提升代码质量和可维护性。 1. FindBugs插件介绍: FindBugs插件是Eclipse中的一个扩展,它可以集成到开发环境中,...

    checkstyle和findBugs插件 eclipse插件

    本文将详细介绍两个重要的Eclipse插件:Checkstyle和FindBugs。 1. Checkstyle Checkstyle是一款静态代码分析工具,用于检测Java源代码中的潜在问题和不符合编码规范的地方。通过定义一套检查规则,Checkstyle可以...

    eclipse findbugs 插件

    Eclipse FindBugs插件是Java开发者常用的静态代码分析工具,它能帮助找出代码中潜在的错误和不良实践,从而提高代码质量和可维护性。该插件集成在Eclipse IDE中,通过分析项目的源代码来查找可能的问题,这些问题...

    eclipse 插件 findBugs

    **Eclipse插件FindBugs详解** 在软件开发过程中,代码质量是衡量项目稳定性和可维护性的重要指标。为了确保代码的健壮性,开发者通常需要进行严谨的代码审查和测试。Eclipse插件FindBugs就是这样一个强大的静态代码...

    eclipse(4)-FindBugs 插件

    FindBugs既提供可视化 UI 界面,同时也可以作为 Eclipse插件使用。文本将主要使用将 FindBugs作为 Eclipse插件。在安装成功后会在 eclipse中增加 FindBugs perspective,用户可以对指定 Java类或 JAR文件运行...

Global site tag (gtag.js) - Google Analytics