eclipse插件之Findbugs、Checkstyle、PMD安装及使用


一、什么是Findbugs、checkstyle、PMD

Findbugs、checkstyle和PMD都可以作为插件插入eclipse,当然也有单独的工具可以实现他们的功能,比如Findbugs Tool就可以不必插入eclipse就可以使用。

三者的功能如下表:

工具

目的

检查项

FindBugs

检查.class

基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bug

主要检查bytecode中的bug patterns,如NullPoint空指针检查、没有合理关闭资源、字符串相同判断错(==,而不是equals)等

PMD

检查源文件

检查Java源文件中的潜在问题

主要包括:

空try/catch/finally/switch语句块

未使用的局部变量、参数和private方法

空if/while语句

过于复杂的表达式,如不必要的if语句等

复杂类

CheckStyle

检查源文件

主要关注格式

检查Java源文件是否与代码规范相符

主要包括:

Javadoc注释

命名规范

多余没用的Imports

Size度量,如过长的方法

缺少必要的空格Whitespace

重复代码

该表转自:http://blog.csdn.net/ml5271169588/article/details/6975701

三者作为开源的软件,可以让我们无所畏惧的使用,而不用考虑版权问题。他们的源代码保存在http://sourceforge.net/上,下载也可以去这里下载。


二、Findbugs、checkstyle、PMD的安装

首先要说明的是,我电脑的eclipse是luna版本,JDK是1.8的。

eclipse和JDK的安装就不多说了,很容易搜到,而且目前JDK都不需要复杂的配置,基本上只要下载好再安装就好了。

那么接下详细的介绍Findbugs、checkstyle、PMD的安装(使用三部分说明:如何安装eclipse插件->下载插件->安装插件->查看插件是否安装成功)

1、如何安装eclipse插件

目前来说有三种安装eclipse插件的方式:

(1)在线安装方式:使用Eclipse的菜单栏 Help -> SoftwareUpdates -> Find and install... -> search for new features...  ->输入软件安装地址进行安装

(2)离线安装方式一:下载插件文件,将其解压缩到Eclipse对应的目录中,即eclipse目录下对应的features下和plugins下。

(3)离线安装方式二:links文件方式。

前两种方式比较简单,百度经验http://jingyan.baidu.com/article/15622f2454893cfdfcbea5d1.html上有详细的图文教程。

我选择了第三种方式,因为这样可以把eclipse插件放在一个独立的目录统一管理,多个Eclipse均可以指向这个eclipse插件目录,后面我会具体介绍如何采用第三钟方式安装插件。

 2、下载插件

因为Findbugs、checkstyle、PMD都在http://sourceforge.net/这个开源的网站上进行管理,所以直接去该网站下载。

工具 下载地址 截图 注意事项
Findbugs  http://sourceforge.net/projects/findbugs/files/findbugs%20eclipse%20plugin/    下载的时候要注意红框里一定是findbugs eclipse plugin,有可能你在这个网站上下载到Findbugs,但他不能用做eclipse插件使用。可能有其他用途吧。
Checkstyle  http://sourceforge.net/projects/eclipse-cs/files/?source=navbar    你可能在sourceforge上找到checkstyle,但下载下来同样不能用做eclpse插件使用,注意要下载eclipse checkstyle plug-in。
PMD http://sourceforge.net/projects/pmd/files/pmd-eclipse/update-site-latest/

 
我没有找到可以一下plugins和features的文件都下载下来,只能一个一个的下载,然后重新创建了features和plugins文件夹,然后把东西放里面。也许有更好的方法吧。同样注意下载的是pmd-eclipse目录下的文件

下载好后就可以采用上述的安装方式的一种安装了。

3、安装插件

links方法安装:

我的eclipse的安装目录是D:\Application\eclipse。

目标是把插件放在和eclipse文件夹同级的D:\Application\eclipse_plugins下(文件夹名随意)。

(1)首先在D:\Application\eclipse_plugins文件夹操作。

在eclipse_plugins文件夹下创建D:\Application\eclipse_plugins\lunaeclipse(文件夹名随意),表示这是lunaeclipse所使用的插件。

分别在D:\Application\eclipse_plugins\lunaeclipse下创建Findbugs、Checkstyle和PMD三个文件夹(文件夹名随意)。如图:

然后在Findbugs里面建立一个eclispe文件夹(文件名固定),eclipse文件夹下创建features(文件名固定)和plugins(文件名固定)文件夹。

Checkstyle和PMD进行同样的操作。

然后将下载好的文件(里面包含plugins和features),按照同样的结构放入对应文件夹里。例如:

Checkstyle和PMD进行同样的操作。

(2)接下来操作eclipse的安装目录D:\Application\eclipse。

在该目录下新建文件夹links(文件夹名固定),然后创建Findbugs.txt、Checkstyle.txt、PMD.txt(文件名随意)文件,打开该文件并且写入一句path=D:\\Application\\eclipse_plugins\\lunaeclipse\\Findbugs,该路径是之前创建Findbugs文件夹的路径,同样操作Checkstyle和PMD。在将扩展名.txt改为.link(据说扩展名改不改无所谓)。如图:

然后重启eclipse就可以了。

注意:如果重启eclipse不可以的话。请尝试进入eclipse安装目录下的D:\Application\eclipse\configuration文件夹,删除org.eclipse.update文件夹,修改config中的org.eclipse.update.reconcile=false改为true。在重新启动eclipse。

4、查看插件

             可以通过两种方式查看插件是否安装成功

(1)依次点击help—>about eclipse->Installation details->Plug-ins,然后搜索自己安装的插件,如果能够搜索到,则说明安装成功。

  (2)更实际一点的方式是创建一个项目,右击项目名,查看是否存在Findbugs、Checkstyle和PMD。

我采用第二种方式:

出现红框里的标志之后,就说明安装插件成功。


三、Findbugs、checkstyle、PMD的使用

打开三个插件的方式大同小异,都是右击项目,找到插件的选项。当分析完毕之后,同样需要右击项目,找到插件选项,点击clear...选项,清除插件标记。

对Findbugs的设置在Windows->Preferences->java->Find bugs下进行设置;在Windows->Preferences下就能找到Checkstyle和PMD的设置。

关于Finbugs、checkstyle、PMD的使用如下表:

  Findbugs Checkstyle PMD

启动/清除

使用

如图所示:代码行左侧出现小虫子,说明有bug或

潜藏的bug。BugExplorer会列出所有bug,Bug

info有关于bug详细的信息。(注意:Findbugs检

查的是.class文件,所以如果无法编译成.class的程

序是无法使用findbugs找到bug的)

黄色部分为代码不符合规范的部分。

如图小三角标记的代码行,存在不符合规范的代码。

设置

关于Findbugs、Checkstyle和PMD的安装和使用先就介绍到这里。三个插件的使用能够帮助程序开发者更好的理解自己的代码,改善自己的代码风格,对程序员有很大益处。

注:由于图比较小,如若看不清,可以放大浏览器查看或者下载下图片看。

2015-05-21

------------------------------

只要你是简单的

这个世界就是简单的

----冰心

eclipse插件之Findbugs、Checkstyle、PMD安装及使用的更多相关文章

  1. jenkins+maven配置findbugs+checkstyle+pmd

    一.findbugs+checkstyle+pmd介绍 工具 目的 检查项 FindBugs 检查.class 基于Bug Patterns概念,查找javabytecode(.class文件)中的潜 ...

  2. jenkins+findbugs+checkstyle+PMD静态代码检查(二)

    可以根据自己的需求选中对应的插件进行配置(不一定非要同时配置三个插件) jenkins:持续集成的工具 fundbugs:检测代码静态错误的插件  例如:定义了没有用到的对象,string类型的比较使 ...

  3. Eclipse插件springsource-tool-suite在线和离线安装步骤

    springsource-tool-suite插件是一个基于Eclipse的开发环境,为开发Spring应用程序而定制.它提供了一个即用的环境来实现,调试,运行和部署Spring应用程序,包括Pivo ...

  4. findbugs, checkstyle, pmd的myeclipse7.5+插件安装(转:http://blog.csdn.net/priestmoon/article/details/63941)

    CheckStyle (1)下载net.sf.eclipsecs_5.3.0.201012121300-updatesite-.zip (2)打开MyEclipse,Help->Software ...

  5. Eclipse 插件 —— SVN 的下载与安装

    介绍一下Eclipse 安装 SVN 插件的方法. 第一步:下载资源文件 打开网址 http://subclipse.tigris.org/ ,点击[Download and Install]标签页, ...

  6. Eclipse 插件 —— RunJettyRun 的下载、安装与使用

    关于 Jetty 与 Eclipse 的集成,网上很多都是使用 Eclipse 的一个自动安装功能 —— Software Update.个人不太喜欢这种方式.这种安装方式有点问题:第一,需要网络流畅 ...

  7. java:Eclipse插件springsource-tool-suite的下载和安装

    1.打开下载页面http://spring.io/tools/sts/all 找到这个,后补全部版本链接http://spring.io/tools/sts/legacy 插件压缩包下载安装: 链接下 ...

  8. Eclipse插件springsource-tool-suite的下载和安装

    根据佟刚Spring课程,装完这个插件,再利用maven构建工程,爽 课程:https://www.bilibili.com/video/av21335209?from=search&seid ...

  9. Eclipse插件的安装与配置

    1.下载插件时注意要和Eclipse版本兼容. 2.安装Eclipse插件时注意是否要安装其他的插件,这一点很容易被忽视. 3.有时启动Eclipse未加载插件,解决方法很多,总结一下:     a ...

随机推荐

  1. 线程局部存储TLS(thread local storage)

    同一全局变量或者静态变量每个线程访问的是同一变量,多个线程同时访存同一全局变量或者静态变量时会导致冲突,尤其是多个线程同时需要修改这一变量时,通过TLS机制,为每一个使用该全局变量的线程都提供一个变量 ...

  2. Beat(2/7)

    目录 摘要 团队部分 个人部分 摘要 队名:小白吃 组长博客:hjj 作业博客:beta冲刺(2/7) 团队部分 后敬甲(组长) 过去两天完成了哪些任务 整理博客 做了点商家数据表格 接下来的计划 做 ...

  3. 根据C#编程经验思考编程核心

    程序是对数据的各种操作.数据的表示,数据的组织结构,数据的存储,数据的处理,数据的传输等. 程序是由具体的编程语言编写的,不同的编程语言有编写,编译检查,解释执行等过程. 具体的编程语言都有: 1,变 ...

  4. 如何解决abd.exe已停止工作

     打开电脑,右键点击属性会出现如下界面: 点击左边高级系统设置:将会出现如下界面: 点击环境变量,点编辑. 把环境变量中的 ANDROID_ADB_SERVER_PORT 改成1122以后还遇到这个问 ...

  5. Python入门:字符串的分片与索引、字符串的方法

    这是关于Python的第3篇文章,主要介绍下字符串的分片与索引.字符串的方法. 字符串的分片与索引: 字符串可以用过string[X]来分片与索引.分片,简言之,就是从字符串总拿出一部分,储存在另一个 ...

  6. C++ 查看预处理后的源文件(查看真实代码)

    gcc -E filename.cpp 会生成 filename.cpp 的预处理文件,这样就能看到宏展开后的代码,用于理解和调试宏非常有帮助.   http://www.qtdebug.com/cp ...

  7. C# 键盘记录器

    设计背景 Win系统带有API可以获取键入值,本小程序主要应用了一个网上广为流传的类,可以说一个测试DEMO.有俗称为键盘钩子 设计思路 使用Win API获取建入值 相关技术 Win API 功能 ...

  8. Alternate Task UVA - 11728 (暴力。。分解质因子)

    题意: 输入一个正整数S,(S  <= 1000)求一个最大的正整数N,使得N的所有正因子之和为S. 解析: ..求1000以内的所有数的正因子和 ...输出.. #include <io ...

  9. git 复位出现If no other git process is currently running, this probably means a git process crashed in this repo

    复位到A节点的时候点了取消(终止),又去复位另外个节点,结果每次不管复位哪个都会报这个错误 fatal: Unable to create 'XXXXXXXXX' : File exists. If ...

  10. BZOJ 4753 [Jsoi2016]最佳团体 | 树上背包 分数规划

    BZOJ 4753 [Jsoi2016]最佳团体 | 树上背包 分数规划 又是一道卡精度卡得我头皮发麻的题-- 题面(--蜜汁改编版) YL大哥是24OI的大哥,有一天,他想要从\(N\)个候选人中选 ...