提高代码质量的插件
1. FindBugs
FindBugs可以帮你找到Java代码中的bug,它使用Lesser GNU Public License的自由软件许可。
2. Checkstyle
Checkstyle插件可以集成到Eclipse IDE中去,能确保Java代码遵循标准代码样式。
3. ECLemma
ECLemma是一款拥有Eclipse Public License许可的免费工具,它提供了方便快捷的开发和测试环境。你可以使用代码覆盖模式下的“launch”功能,用起来就像是真正的运行/调试模式。你可以通过使用代码覆盖试图,高亮源文件,计数来分析代码。
4. JDepend4Eclipse
JDepend4Eclipse可以帮助你遍历文件夹,协助你量化设计的质量。它使用Eclipse Public License v1.0许可。
5. PMD
PMD是一款代码分析器,用来检测变量和写得不好的代码。(更新网址-http://pmd.sourceforge.net/eclipse/)
6. SourceHelper
SourceHelper可以协助编码和调试,对写好的代码提供说明。
7. Structure101
Structure101帮助修改代码的架构,就是说你可以改变架构,而不打乱代码。
文本编辑插件
8. AnyEdit Tools
AnyEdit为输出控制台和工具栏增加了新的编辑器,帮助导入和导出数据。它使用Eclipse Public License v1.0许可。
9. Eclim
Eclim给Eclipse引入了Vim的功能,Vim是最好的编辑器之一。开发者可以采用不同的语言来编写代码,它也提供bug纠错功能。Eclim使用GPLV3许可。
10. Eclipse-rbe
Eclipse-rbe用来编辑Java文件,它的功能有为缺失变量发出警告信息,排序键值,转变Unicode编码等。它使用GNU库或LGPL许可。
依赖性管理插件
11. Apache IvyDE
Apache IvyDE集成了Apache Ivy的依赖管理功能。它能管理’ivy.xml’中的依赖,也能够配合WPT和Ant插件的使用。
12. M2eclipse (Maven插件)
M2eclipse能够管理简单的项目,也能管理多模块项目,它能在Eclipse中启动maven。它提供依赖管理,能提供自动下载。
版本控制插件
13. Subclipse
Subclipse是一个SVN插件,它为Eclipse IDE提供subversion支持,使用EPL 1.0许可。
14. EGit
EGit提供同步视图,可以读.git/ 下排除的文件,提供rebase功能,为pull和push提供精简的操作。
15. MercurialEclipse
MercurialEclipse是个流行的版本控制系统。它提供了clone repository功能,push-pull同步功能,以及简单的回滚功能。
16. P4Eclipse
P4Eclipse吸纳了Perforce管理系统的特长。它提供了以开发者为导向的一系列的功能,并且支持许多Agile开流程发以及传统开发流程。
框架开发插件
17. Spring Tool Suite
Spring Tool Suite提供了XML文件预览以及图形化的spring配置编辑器等开发环境和工具,它能让开发变得更简单。
18. Spring IDE
Spring IDE帮助你开发Spring应用,它提供了图形编辑界面。它还能用图形的方式显示bean之间的关系。(更新网址 – http://springide.org/updatesite)
19. Hibernator
Hibernator能够创建或更新数据库schema,运行hibernate查询语句,创建映射文档。用户可以将一个Java类和一个相关的映射文件同步起来。
20. JbossTools
JbossTools 3.2x支持JBoss,Hibernate,Drools,XHTML,Seam等。(更新网址-http://download.jboss.org/jbosstools/updates/JBossTools-2.1.2.GA)
其他功能插件
21. ASM – 二进制预览插件
ASM Bytecode Outline插件可以显示当前的Java文件或class文件的分解的二进制代码,便于Java/class文件的二进制比较,也可以显示当前二进制代码的ASMifier代码。你可以用Eclipse更新管理器来安装ASM。(更新网址-http://download.forge.objectweb.org/eclipse-update/)
22. Mylyn – 任务管理
Mylyn采用任务为中心的界面,它为开发者提供了任务管理工具。另外,也集成了富文本编辑工具,以及监测工具。
23. Eclipse Launcher
Eclipse launcher采用Delphi 6写成,使用它你可以自定义启动Eclipse IDE时的配置。
24. FileSync
FileSync拥有Eclipse Pulic License v1.0许可,它是一个文件同步工具,可以创建,删除,映射文件。
25. Log4E
Log4E可以帮你更容易的写日志,而不需要受特定日志框架的约束。当然你也可以自定义你自己的日志模版。
总而言之,插件能让Eclipse用其他语言来编写。Eclipse插件是必不可少的,因为它们让Java应用无缝连接,降低了Java的复杂度。然而,装了过多的插件会让你的Eclipse变慢,所以你需要有选择性的安装插件。
除了以上提到的插件,当然还有其他的高效率的插件,如Jadclipse。如果你还有其他让你觉得好用的插件,请写下来吧。
Darkest Dark
如果你也是那种讨厌白色背景的人,那么肯定不会问我为什么黑屏更好,也不会觉得使用“darkest”修改“dark”是多余的。我相信你一旦用了 Darkest Dark(https://marketplace.eclipse.org/content/darkest-dark-theme) 主题之后一定会爱上它,因为它让你面对一整天电脑屏幕之后的眼睛不那么难受。
![](https://images-cdn.shimo.im/qtScIqTlFGYg37n9/3_deepest_dark_100740383_orig.jpg!thumbnail)
SpotBugs
我个人非常喜欢 SpotBugs(https://marketplace.eclipse.org/content/spotbugs-eclipse-plugin) 这个工具。我借助它帮我找出我正在写的代码中的错误。与之前使用的 FindBugs 工具类似,SpotBugs 像一个严格的审计人员一样,其内部预编了数百个“bug 匹配模板”。它搜索你的代码,使用bug 模板进行匹配就可以帮助你找到代码中的错误。我相信有一些程序员会对 SpotBugs 工具找出的bug表示怀疑,但是有这么一个工具帮你找出错误,给你一定的参考总是好的。
![](https://images-cdn.shimo.im/5wRTElEbIlcsual1/13_spotbugs_100740393_orig.jpg!original)
Checkstyle
尽管有时候我像讨厌法西斯主义一样厌恶 Checkstyle(https://marketplace.eclipse.org/content/checkstyle-plug),但是我必须承认,在每个人都遵循相同规则并以同样的方式构建代码的项目工作会更加容易。大脑有一种学习风格的方式,当每个方法的空白处于同一个位置时,大脑就能更快地理解每个人的代码。当然,你可以编写 Checkstyle 插件来执行你自己所喜爱的规则,这意味着你可以自己动手定制自己独特的东西。
![](https://images-cdn.shimo.im/rTDkvl20FwA9JBRf/2_checkstyle_100740384_orig.jpg!thumbnail)
Subclipse 与 Subversive
如今在版本控制领域 Git 占据的份额越来越大,但是依然有很多人使用 Subversion 工具。对于 SVN 用户来说一般有两个工具可以选择:Subclipse(https://marketplace.eclipse.org/content/subclipse/)和 Subversive(https://marketplace.eclipse.org/content/subversive-svn-team-provider)。这两者都能很好地完成版本控制管理工作,目前它们各自的用户数几乎平分秋色。这两者的差异主要在于信息呈现方式有所不同。具体使用哪一个取决于个人喜好,不过据统计用户在使用这两个工具时都会偶尔遇到一些小问题。
M2Eclipse
M2Eclipse(https://marketplace.eclipse.org/content/maven-integration-eclipse-luna-and-newer),或者简称 M2E ,是将 Maven 构建工具集成到 Eclipse 的首选方案,这样一来,你的每次保存将触发 Maven 构建项目而不仅仅是 Eclipse。精心设计的 POM(项目对象模型)避免了需要记住 Maven 的 XML 模式的麻烦,当然,你依然可以编辑原始 XML。上图显示了各种代码的依赖关系。
Unnecessary Code Detector
当我们需要清理代码并删除那些不需要的代码碎片时,Unnecessary Code Detector(https://marketplace.eclipse.org/content/unnecessary-code-detector/metrics) 就可以完成这项工作。当你点击按钮该工具就会出现标志来告诉你哪些方法不再使用。此外,这个工具还会标记出其他的编码错误,在将代码提交到仓库之前使用该工具是非常有用的。
SonarLint
解决空格和 Tab 问题是很多程序员都要做的工作,lingting 工具可以帮助我们自动完成这项工作。SonarLint(https://marketplace.eclipse.org/content/sonarlint) 将 lint 的强大功能带到了 Eclipse 中。在检查代码之前,你可以长时间运行 lint 工具,其内部的代码审查机制将帮助你解决空格和 Tab 问题。
JRebel
调试代码从来都不是一件简单的事,如果你的代码构建非常复杂那么调试起来就更不容易了。JRebel(https://marketplace.eclipse.org/content/jrebel-eclipse) 是一个非常智能的 Java 代理,它可以更改代码并将其插入到已经运行的代码中。我一直以来都在使用 JRebel,它非常强大,在重建或者重新运行代码之前你可以尝试使用一下 JRebel。这对于 Eclipse 来说非常合适,因为 Eclipse 从一开始就已经完成了大部分的工作。
TestNG
为代码编写好的单元测试可能比编写代码本身更加重要。TestNG(https://marketplace.eclipse.org/content/testng-eclipse/) 将你的测试与 Eclipse 集成在一起,因此你可以很方便地运行它们。编译之后就产生结果,测试的集成度比以往更高。
JSweet
JSweet(https://github.com/cincheo/jsweet-eclipse-plugin) 可以将 Java 代码转换成 JavaScript 代码。对于那些想要从 Java 转到 JavaScript 的程序员来说可以继续编写Java 代码。如果你不想花太多精力敲代码,那么你可以使用 TypeScript ,当然最终都会转换为 JavaScript。Eclipse 的这款插件让你可以通过 Java 代码实现大部分的功能,然后在最后生成 JavaScript 即可。
Bytecode Outline
大部分程序员都没有契机去了解 Java 堆栈里面到底发生了什么。我们使用高级编程语言就可以实现想要的功能。但是当你想要深入挖掘内部机制试图让代码运行更快时,查看实际的 Java 字节码是非常有用的。如果你是一名真正的程序员,你肯定会对深层次的东西充满兴趣。Bytecode Outline(https://marketplace.eclipse.org/content/bytecode-outline) 正是开启代码灵魂窗口的工具。
PyDev
如果你对 Python 的普及程序有所怀疑,那么不妨看看 PyDev(https://marketplace.eclipse.org/content/pydev-python-ide-eclipse), 它是一个能够让 Python 开发者告别命令行并享受 Eclipse 的强大插件。它不仅支持基本语法,还支持流行的 Python 的框架,比如 Django, 它能够将 Django 代码推送到 Google App Engine。它对于 Python 开发者来说是一个完整的开发插件。
Nodeclipse
使用 JavaScript 构建服务器应用程序已经在无数程序员中风靡多时。如今,Nodeclipse(https://marketplace.eclipse.org/content/nodeclipse) 插件让开发者从带有奇怪参数标志以及无数脚本的命令行中解脱出来,取而代之的是非常友好、易用的高度集成化的开发环境。当然,你仍然可以通过命令行和 VI 编辑器编写 Node.js 代码,但是何必要花那么多的精力去记住大量的命令呢?
Scala IDE
对于那些喜欢功能性语言的开发者来说,Scala 一直以来都充满吸引力,它提供功能性语言的生产结构和支持,同时可以与来自 Java 世界的庞大代码库一起工作。Scala 在 JVM 上运行,它可以链接任何 JAR 文件。因此,Scala 爱好者为 Eclipse 创建一个 Scala IDE(http://scala-ide.org/) 也就不足为奇了,他们可以利用 Eclipse 的强大功能来构建他们喜欢的应用程序。
Kotlin
很多人把 Kotlin 看成 Java 的简化版。Kotlin 拥有丰富的函数式编程特性,擅长处理空值,具有与 Java 的互操作性,能够生成 JavaScript 和 native 代码,它受到 Android 开发者的强烈追捧。如果你想加入 Kotlin 的潮流, 那么针对 Eclipse 的 Kotlin(https://marketplace.eclipse.org/content/kotlin-plugin-eclipse) 插件将是你的不二选择。
YEdit
如今并不是所有人都热衷于使用 JSON 格式来存储数据。现今另一个热门的方式是 YAML。树结构一样,数据也几乎相同,它使用缩进而不是大括号。YEdit(https://marketplace.eclipse.org/content/yedit) 是一个简易创建 YAML 文件的工具。它的基本概念不难理解,但有时候对于缩进的使用需要一点帮助。
UML Designer
我至始至终都不明白 UML(统一建模语言)有何吸引力,但是仍然有相当数量的人喜欢它,喜欢使用来自 Obeo 的 Eclipse 插件 UML Designer(https://marketplace.eclipse.org/content/uml-designer)。UML 是用于指定、创建和记录面向对象编程项目元素的标准。当你画出长方形,所有人都能明白你的意图。该插件还让你可以深入定义 UML 的 XML 树形表示。如果你喜欢 UML ,那么你可能也会喜欢UML Lab Class Diagram Editor(https://marketplace.eclipse.org/content/uml-lab-class-diagram-editor/metrics) 和 UML Java Generator(https://marketplace.eclipse.org/content/uml-java-generator/metrics)。
ImageJ
Eclipse 通常情况的使用者是程序员,但是随着计算机渗透到更多科学领域,越来越多科学家+程序员双重身份的人开始涌现。的确,你很难找到一个完全不会写代码的科学家。ImageJ(https://marketplace.eclipse.org/content/imagej-plugin) 是一个强大的图像分析程序,它彻底改变了大量视觉数据的收集方式。如果你在 Eclipse 中运行它,可以编写自定义的代码来自动完成下一篇论文所需的所有数据的收集和整理。