Eclipse 插件 FindBugs 使用手册_第1页
Eclipse 插件 FindBugs 使用手册_第2页
Eclipse 插件 FindBugs 使用手册_第3页
Eclipse 插件 FindBugs 使用手册_第4页
Eclipse 插件 FindBugs 使用手册_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Eclipse插件FindBugs使用手册前言:本文介绍如何利用Eclipse插件FindBugs优化Java代码。本插件是本人在对系统进行代码优化的时候,向迟焕祺同事索取并学习使用的,现在把工具的一些使用方法与大家共享,并把FindBugs提供给大家!感谢迟哥提供良好资源供大家学习、使用!问题提出:当我们编写完代码,做完单元测试等各种测试后就提交正式运行,只能由运行的系统来检测我们代码是否有问题了,代码中隐藏的错误在系统运行的过程中被发现后,然后再来进行相应的修改,那么后期修改的代价就相当高了。解决方法:现在有很多Java代码分析工具,FindBugs中开源项目当中的一个,它可以帮你找到代码中隐藏的一些错误,提升你的代码能力与系统安全可靠性。FindBugs介绍FindBugs是一个可以在Java程序中发现Bugs的程序。它是专门用来寻找处于“BugPatterns”列表中的代码的。BugPatterns指很有可能是错误的代码的实例。原文:FindBugsisaprogramtofindbugsinJavaprograms.Itlooksforinstancesof"bugpatterns"---codeinstancesthatarelikelytobeerrors.使用FindBugs至少需要JDK1.4.0以上版本,FindBugs是平台独立的,可以运行于GNU/Linux、Windows>MacOSX等平台上。运行FindBugs至少需要有256MB内存,如果你要分析一个很大的项目,那就需要更加多的内存了。获取FindBugs最新版本:/projects/findbugs/files/FinBugs介绍:/manual/Eclipse插件links文件夹方式配置:提示:直接的插件配置方式是使用 Eclipse的Update方式更新,或者把新下载的插件PlugIn放在原始的Eclipse目录下去,这种方式会随着插件的增多而导致插件维护工作量的增加。鉴于上述原因,可以使用links文件夹的方式进行配置。(MyEclipse插件就是使用links的方式进行配置的)配置方式如下:安装好Eclipse工具,可以到上下载压缩包。比如安装在E:\OpenSource\Eclipse\目录下, 以下这个目录以%ECLIPSE_HOME%来进行表示;此时默认的插件是在%ECLIPSE_HOME%\plugins目录中的;在%ECLIPSE_HOME%下建立一个PlugInsNew的目录;比如:E:\OpenSource\Eclipse\PlugInsNew你下载了个新的插件,比如叫做:XYZ那么就在%ECLIPSE_HOME%\PlugInsNew\目录下建立XYZ目录,目录里面是eclipse目录,eclipse目录包含有features与plugins两个子目录;结构如下图所示:

features_JHerosoFtijpiuqins^XfluglnsNe'/J-features_JHerosoFtijpiuqins^XfluglnsNe'/J-s\?j配旧果VjfJ■1plugjns十_JJavaProject_|JDKIOpenSource-._|Eclipse\KIJjconfiguration才桌面-Q野的电脑玉g3占软盘(A:)$^3WIN98(C:)田mWin2K(D:)-2DataBase-E(E:)王匚JBEA毛l_JCV5Eclipse插件目录示例1那么插件配置方式:把下载的新插件的文件放在以下相应目录中%ECLIPSE_HOME%\PlugInsNew\XYZ\eclipse\features%ECLIPSE_HOME%\PlugInsNew\XYZ\eclipse\plugins建立相关的.link的文件然后在%ECLIPSE_HOME%\links目录里建立一个XYZ.link的文件,内容如是:path=E:/OpenSource/Eclipse/PlugInsNew/XYZ就一行这样的路径指示而已。重新启动Eclipse即可FindBugs插件配置:(MyEclipse的配置方式也一样)FindBugs插件安装方法采用上一节的《Eclipse使用技巧之插件管理》重新启动Eclipse后,在Help=>AboutEclipseSDK=>Plug-inDetails你可以看到由“FindBugsProject”提供的“FindBugsPlug-in”版本0.0.17插件,如下图所示:

♦AboutEclipseSDKPlug-ins|n|xfProviderPlug-inNameVerssonPlug-inId3EUML2Examples1,1.1org.eclipse.uml2.examplesEUML2ExamplesSource1.L1org.eclipse.uml2.exanriples....EUML2ExamplesUIl.i.lorg.eclipse.um!2.examples.uiEUML2ImporterforEMF1,1.1org.eclipse.uml2.ecore.impo..,E□ML2Resources1,1.0□rg.eclipse.uml2,resourcesEclipse,orgUML?Sourcel.i.lorg.eclipse.uml2.50urtBEViews3,i.larg.eclipse,ui.vieEWetcorifieFr&rrtework3.1.1arg.eclipse,roEWorkbench3,LIorg.eclipse.ui.workbenchEWorkbenchCompatibility32.0org.eclipsetiji.workbench,co..,EXM.SchemaEditFrame,..2.1.0org.eclipserxsd.editEdipse,orgXMLSchemaEditor2,1.8org.eclipse,xsd.editorE州LSchemaImporterfo...2.L0org.edipserx5d.ecore,import..EXMLSchemaInfosetMo...2,1.1org.edipsfe.xsdEXSDtoEcoreMapping2,1,0org.eclipse.emf,mapping.xs...Edips&.tirgX5DtoEcoreMappingE...24.0arg.eclipse.emf,mapping.xs...・・i!■rwiurwi c w9 t •i"w■i "wfizr g'Wr11[FindBugsProjectFindBuasPlugHn0.0.17de.tobject.findbugs5~J51191lUs.mrii11vi\j ■vHIy1 1CPIIIa^VllIII1U1lJrJesperKainstrupLinnetImplejmerttorsCorePtug-inDO.15dk,kamstruplinruet.iffiplemen...JespetKamstrupLinnetImplementorsEJBPlug-in0,0.15dk.kamstruplinnet-implemen...JesperKamstrupLinnetImplefinentorsUIPlug-inDO.15dk,kamstrupiinnet.iimplemen...JObjectWASMFramework2,2.1□rg.objectweb.asmMoreInfoOKFindBugs-Plug-in版本2FindBugs工具的使用在PackageExplorer或Navigator视图中,选中你的Java项目,右键,可以看到““FindBugs菜单项,子菜单项里有“FindBugs”和“ClearBugMarkers”两项内容,如下图所示:

New ►GoIntoOpeninNei/jWindow|xDeleteMove,..Renams「迪JjnportiExport,.,芝ReFreshCloseProject一dEasyExplore..-RunAs ►£ebugAs ►Team ►CompareWith ►RestoreFromLocalHistory,,.■£PET:曲 一 ►.r. .LFindBugs ►FindBugs 4Properties _CleafBugMiners1 FindBugs插件3我们建立一个简单的测试文件Test.java内容如下:publicclassTest{privateString[]name;publicString[]getName(){returnname;}publicvoidsetName(String[]name){=name;}}我们点中“FindBugs”,运行时会出现如下进度框:运行结束后可以在Problems中看到增加了如下的警告信息内容

FindBugs检测结果4选中Problems视图里出现的相应问题,就会在代码编辑器里切换到相应的代码上去,方便根据相应的提示信息进行代码的修改。willpointtolocationsinyourcodewhichhavebeenidentifiedaspotentialinstancesofbugpatterns.在Problems视图里,选中相应的问题条目,右键,在弹出的菜单中,可以看到'ShowBugDetails”,如下图所示:图片5点中它,会切换到BugDetails视图上去,显示更加详细的提示信息。FindBugs运行后的警告信息内容不仅在Problems视图中显示,而且将标记在源代码标记框中,在源代码编辑器中我们可以看到警告标识(与Eclipse的警告标示类似)当光标指向你的警告信息的代码上面时,就会有相应的错误提示信息,与Eclipse本身的错误或警告信息提示类似。当然,在代码编辑窗口中,点击带有警告提示信息的图标时,也会自动切换到BudDetails窗口去,查看详细的警告信息,如下图所示。

FindBugs提示6根据这里详细的信息,你可以得到FindBugs为什么会对你的代码报警告信息,及相应的处理办法,根据它的提示,你可以快速方便地进行代码修改。FindBugs提示修改信息7根据提示,我们将代码修改成如下,再运行就不会报有警告信息了。publicclassTest{privateString[]name;publicString[]getName(){String[]temp=name;returntemp;}publicvoidsetName(String[]name){String[]temp=name;=temp;}}配置FindBugs选择你的项目,右键=>Properties=>FindBugs=>

AMEiTiptyipFirfnfcrym■■Tnptynpffaertrv|Cr心!*Ques&cmbfoces^toconcrMcolKDQrAMEiTiptyipFirfnfcrym■■Tnptynpffaertrv|Cr心!*Ques&cmbfoces^toconcrMcolKDQrbtmasts| bT防取争M坦.0mi!册此|FCfehEHi0RSAMethod E号:d«nu戳源t«lta clWu*fWA烦.就姒edWGoheLAom■Oas-sfrtWTiertS 3上 nc皿gf«*cibr?ECdhedkerfF<eHCCMH?wdmightdroprUFbon|fhrdgd我mMkdvFfiMi|禹例r<s«eigInwcciOen4 rtqrrCMHaft小*砒禹cib^ctwHttEb&虾:|0l*啊网伸mccatcn<rf咛山:.Eonmw.m|E5WC;|ECFindBugs配置界面可以配置的信息包括如上图所示的四个选项的相关设置:RunFindBugsAutomatically开关当此项选中后,FindBugs将会在你修改Java类时自动运行,如你设置了Eclipse自动编译开关后,当你修改完Java文件保存,FindBugs就会运行,并将相应的信息显示出来。当此项没有选中,你只能每次在需要的时候自己去运行FindBugs来检查你的代码。Minimumprioritytoreport选择项这个选择项是让你选择哪个级别的信息进行显示,有Low、Medium、H

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论