你应该关注的几个Eclipse超酷插件
来自非营利性Eclipse基金会的Eclipse IDE以其插件生态系统著称。Eclipse市场拥有海量插件可供下载,你可以通过插件定制自己的Eclipse。
最近我在Eclipse Marketplace闲逛,想看看能不能发现一些有意思的东西。实际上,我确实找到了一些在我看来虽然不是很有名却很酷的东西,想在这里和大家分享。
流行 vs 酷
我关注的插件具备以下特性:
首先,我要强调的是这些插件本身不是某种工具,所以我最喜欢的JRebel和JBoss工具不在此列。我关注的都是能够让你安装的普通Eclipse成为更加有趣的优秀插件。
其次,流行并不等于酷。在Eclipse市场,最流行的插件列表机会在最近2-3年几乎没有变化。
一个插件只因为被下载次数多就被认为很酷,在我看来这是很没有意思的。那些插件之所以上榜只是因为它们补充了Eclipse不具备的基础功能,这就是为什么Maven、Subversion和Git插件会名列前茅。
我眼中的酷插件shell助手
虽然我是一名Java开发者,有时也会写一点shell脚本。下面是几个对编写shell非常有用插件。ShellEd插件提供了shell脚本的编辑功能,Terminal插件将shell的输出集成到了Eclipse工作台。
通过ShellEd和Terminal插件,我可以无需在窗口之间来回切换就能在Eclipse中完成shell脚本的编写和运行,真的非常高效!
像老板那样编辑!
接下来在名单上的是More Clipboard、Smart Save和AnyEdit。这些插件在不同程度上改善了编辑体验。

More Clipboard会记录最近拷贝/剪切到剪切板缓冲里的内容,使用快捷键弹出备选列表可以进行快速粘贴。好吧,我承认在写代码的时候一直在复制粘贴:)

AnyEdit插件由Andrey Loskutov开发,它为Eclipse增加了很多编辑功能。你可以对文件和选中的内容排序,对HTML代码加密,在tab和空格之间快速转换,等等。我得说这是Eclipse的一个必备插件。
一开始我用的是IntelliJ IDEA,它与Eclipse最重要的不同就是IDEA编辑器会自动保存修改。于是,我开始寻找可以用在Eclipse上的类似插件。最后,我找到了Smart Save。它可以配置在若干时间后自动保存修改,很酷很方便!
但是,我认为它会影响一些编辑体验。因为Eclipse默认会开启保存编译选项,所以每次保存都会进行一次清理(clean)和构建(build)。因而理论上可能会发生这样的情况,你刚刚进行了编辑但是Eclipse会决定做一次完整的构建,这会让整个Eclipse卡住。
扮靓你的Eclipse!
接下来要出场的是Eclipse Color Theme。这是唯一一个既出现在我名单里又在Eclipse市场最受欢迎插件列表中出现的插件。差个插件提供对你的Eclipse编辑器设定一个颜色主题,并且自带了很多好看的备选主题。

我个人比较偏好Roboticket,但是也有很多其它选择,比如下面的Monokai。

持续反馈
如果你是持续反馈开发方法的粉丝,而且热衷于编写单元测试(这里解释了为什么单元测试很棒),那么JLoop和JUnitLoop插件一定对你很有帮助。这两个插件能够在任何改变发生后立即执行代码。我发现JUnitLoop非常友好,当我更新了一个曾经执行过单元测试的方法后这些测试能够自动执行并且快速给出反馈。

自动化狂热分子
追求高效会让你步入自动化的美好世界,然而不幸的是Eclipse默认不提供宏支持,你不能在Eclipse理记录并重放你的活动。然后,有一些插件通过脚本能够让你在Eclipse中的活动自动化。

最佳方案只是就是GroovyMonkey插件,可惜这个插件的维护并不活跃。其它的替代方案有ScriptEclipse和EclipseScript(请不要把两个插件弄混!)。
基本上,这些实现的背后逻辑非常相似——核心引擎为脚本提供Eclipse内部对象,你可以通过脚本按照自己的要求实现逻辑。这些脚本会存储在工作区(workspace)里并且可以直接访问,插件会提供一个脚本列表菜单供你选择。

了解Eclipse
本文介绍的最后一个插件就是IDE++,它会帮助你更高效地使用Eclipse。
IDE++会分析你的行为并提供达成目标有哪些更快捷的方法。比如,如果你一个个地关闭打开的编辑器标签,IDE++会检测并弹出好看的对话框提示你“嘿极客,你知道CTRL+SHIFT+W可以更有效的关闭这些标签吗?”不幸的是,这个插件没有关注到Mac上快捷键会有所不同:)

我真的很喜欢IDE++插件的创意——它能够帮助你发现使用Eclipse过程中的效率瓶颈,所以我真心希望这个插件能够继续开发下去。
总结
如果你是一个Eclipse用户,本文前面提到的插件中应该会有一些帮助你更好地理解IDE并更高效地在Eclipse下编程。希望你能和我一样发现这些插件的出众之处。

戳这里,搜索更多编程视频教程

你应该关注的几个Eclipse超酷插件的更多相关文章
- 【转】你应该关注的几个Eclipse超酷插件
本文由 ImportNew - 唐尤华 翻译自 Anton Arhipov.如需转载本文,请先参见文章末尾处的转载要求. 来自非营利性Eclipse基金会的Eclipse IDE以其插件生态系统著称. ...
- 10款基于HTML5+CSS3实现的超酷源码动画
1.基于Bootstrap的jQuery登录表单 这是一款基于Bootstrap的登录表单,表单的外观自然不用说,沿用了Bootstrap的风格,非常漂亮.这款登录表单有一个经过CSS3处理过的头像图 ...
- [eclipse相关] eclipse 安装svn插件
最近看到别人带主题的eclipse,非常羡慕,所以也换了一个eclipse,版本是java ee luna 4.4.2,然后得偿所愿有了花花绿绿的代码界面:) 但是差点被svn搞死,~~~~(> ...
- Missing artifact net.sf.json-lib:json-lib:jar:2.4错误和Eclipse安装Maven插件错误
微信公众号:compassblog 欢迎关注.转发,互相学习,共同进步! 有任何问题,请后台留言联系! 1.配置Maven项目的pom.xml文件报错 (1).错误描述:Missing artifac ...
- 12只超酷机器人,在家用3D打印搞定!
3D打印最吸引人的地方在于它完全无极限!现在的3D打印已经广范应用在我们的生活.以及工业上的各个领域.最棒的是,DIY玩家可以真正从中受益.我们现在已经可以应用3D打印,在家制作自己的机器人了.如果你 ...
- 推荐9款使用CSS3实现的超酷动画效果
大家都知道,在网页制作时使用CSS技术,可以有效地对页面的布局.字体.颜色.背景和其它效果实现更加精确的控制.只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和 ...
- 在Eclipse安装Genymotion插件的经验心得
个人心得分享,不当之处还请指正. Eclipse自带的Android模拟器已经无力吐槽了,新手刚上手时或许配置完环境已经精疲力尽了,或许还沉浸在开发成功的喜悦当中,对AVD模拟器的运行情况关注不大,渐 ...
- 设置eclipse的Maven插件引入依赖jar包后自动下载并关联相应的源码(转)
好多用 Maven 的时候会遇到这样一个棘手的问题: 就是添加依赖后由于没有下载并关联源码,导致自动提示无法出现正确的方法名,而且不安装反编译器的情况下不能进入方法内部看具体实现 . 其实 eclip ...
- Eclipse插件(导出UML图,打开文件资源管理器插件,静态代码分析工具PMD,在eclipse上安装插件)
目录 能够导出UML图的Eclipse插件 打开文件资源管理器插件 Java静态代码分析工具PMD 如何在eclipse上安装插件 JProfiler性能分析工具 从更新站点安装EclEmma 能够导 ...
随机推荐
- 接口中带参方法,传入IB类型的数据
不同的接口有不同的方法 不同的类有不同的作用 不同的作用产生不一样的效果 不同的效果让程序看似复杂,实际简单... 比如此程序,看似复杂,实际就那么点事: 谁生成了谁,谁设置了谁,谁传入了谁,谁被谁调 ...
- yarn虚拟cpu和虚拟内存
虚拟cpu 虚拟的cpu代码并发数,如果一个container拥有2个vcpu,那么该container就可以真正的在同一时间运行两个线程,而不是靠切时间片而达到的逻辑并发.所以一般虚拟的cpu需要和 ...
- codevs 1082 线段树练习 3 区间更新+延迟标记
题目描述 Description 给你N个数,有两种操作: 1:给区间[a,b]的所有数增加X 2:询问区间[a,b]的数的和. 输入描述 Input Description 第一行一个正整数n,接下 ...
- async 和 await的前世今生 (转载)
async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...
- Error: Checksum mismatch.
bogon:bin macname$ brew install go ==> Downloading https://homebrew.bintray.com/bottles-portable- ...
- windows 启用ipv6(for XX-net)补充“Ping请求找不到主机”问题
ipv6.google.com 有点地方直接能启用,有的时候不行. 导致在xx - net 里无法启用ipv6 这样搞试试 netsh int ipv6 isatap set state enable ...
- Codeforces 431C - k-Tree
431C - k-Tree 思路:dp. dp[i][j][s] 如果s为1,表示第i层长度为j且至少包含一段>=d的距离的路径数 如果s为0,表示第i层长度为j且不包含一段>=d的距离的 ...
- Android之MVC模式的使用
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码 ...
- 『Numpy』高级函数_np.nditer()&ufunc运算
1.np.nditer():numpy迭代器 默认情况下,nditer将视待迭代遍历的数组为只读对象(read-only),为了在遍历数组的同时,实现对数组元素值得修改,必须指定op_flags=[' ...
- 3-1 LVS-NAT集群
---- (整理)By 小甘丶 什么是集群: 集群是一组相互独立的.通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理.(Cluster就是一组计算机,它们作为一个整体向用户提供一 ...