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. C++自学随笔(2)

    引用 就像人的别名,人不能只有别名,变量也不能只有引用. 指针类型的引用:*&指针引用名 = 指针. 如int a = 10;int *p =&a;int *&q =p1 co ...

  2. Java编写的电梯模拟系统《结对作业》

    作业代码:https://coding.net/u/liyi175/p/Dianti/git 伙伴成员:李伊 http://home.cnblogs.com/u/Yililove/ 对于这次作业,我刚 ...

  3. ABP ModuleZero后台框架materialize禁止模拟select和checkbox

    使用abp modulezero自带那个后台框架发现一个操蛋的问题,所有的select和checkbox都被改成div模拟的,虽然比原生美观,但有时候真的很难用. 比如说要用select做一个联动菜单 ...

  4. 蜗牛慢慢爬 LeetCode 15. 3Sum [Difficulty: Medium]

    题目 Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all ...

  5. HDU 2103 Family planning

    http://acm.hdu.edu.cn/showproblem.php?pid=2103 Problem Description As far as we known,there are so m ...

  6. 微信小程序wx:for和wx:for-item的正确用法

    wx:for="{{list}}"用来循环数组,而list即为数组名wx:for-item="items" 即用来定义一个循环过程中每个元素的变量的 如果是一维 ...

  7. 远程修改VMware ESXi服务器的密码(SSH)

    1,用vSphere client登录到服务器,将SSH启用. 2,使用ssh连接工具(我用的是secureCRT)远程登录,输入passwd,键入两次新密码,OK.  

  8. 10条SQL优化语句,让你的MySQL数据库跑得更快!

    慢SQL消耗了70%~90%的数据库CPU资源: SQL语句独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低: SQL语句可以有不同的写法: 1 不使用子 ...

  9. Centos7 FPM 安装mysql8

    参考http://tn.51cto.com/article/647 http://www.jb51.net/article/138787.htm 转载: 卸载centos自带的mariadb rpm ...

  10. [转帖] 红帽8.0 beta版本发布 内核新版本 4.18

    Red Hat Enterprise Linux 8 Beta 现已发布! https://www.oschina.net/news/101870/red-hat-enterprise-linux-8 ...