[转载]Eclipse插件编程之Implementors

Eclipse插件编程之Implementors
本文介绍如何利用Eclipse插件Implementors在Eclipse中的使用。

  Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境。

  问题提出:

  如果你想看看某个类或者方法的实现,一般是Ctrl + 鼠标左键,单击即可以打开这个类或者方法的具体实现代码。但是如果碰到接口时,只是到达接口而已,不能到达具体的实现类里。

  解决方法:利用Eclipse的Implementors插件。

  当追踪方法代码时,Eclipse默认是转到方法的接口类,而接口中是只有方法名称没有具体的实现代码,此插件提供了追踪到具体实现类的实现代码的功能。

  另外还有Call Hierarchy插件: 显示一个方法的调用层次,可以从中看到它被哪些方法调用了,以及它调用了哪些方法,是代码追踪比较实用的工具。Eclipse 3.1中已经自带有这个功能了。这个插件就不用另加介绍了。

  安装


JDK:1.5.0 从 http://java.sun.com上去下载安装
Eclipse:3.1.1 从 http://www.eclipse.org 上去下载解压
Implementors 从 http://eclipse-tools.sourceforge.net/implementors/

  技巧


  Eclipse使用技巧之插件管理

  提示:新下载的插件PlugIn一定不要都放在原始的Eclipse目录下去,一大堆,累死你。
  1. 前提是你已经安装好了Eclipse工具了,比如安装在E:OpenSourceEclipse目录下,以下这个目录以%ECLIPSE_HOME%来进行表示;
  2. 此时默认的插件是在%ECLIPSE_HOME%plugins目录中的;
  3. 在%ECLIPSE_HOME%下建立一个PlugInsNew的目录;
    比如:E:OpenSourceEclipsePlugInsNew
  4. 你下载了个新的插件,比如叫做:XYZ

      那么就在%ECLIPSE_HOME%PlugInsNew目录下建立XYZ目录,目录里面是eclipse目录,eclipse目录包含有features与plugins两个子目录;结构如下图所示:

    129q2i6gc257.jpg

  5. 把下载的新插件的文件放在以下相应目录中

    %ECLIPSE_HOME%PlugInsNewXYZeclipsefeatures
    %ECLIPSE_HOME%PlugInsNew XYZeclipseplugins

  6. 建立相关的.link的文件

    然后在%ECLIPSE_HOME%links目录里建立一个XYZ.link的文件

    内容如是:path=E:/OpenSource/Eclipse/PlugInsNew/XYZ就一行这样的路径指示而已。

    这样,如果你下载了多个插件就可以如法炮制建立多个Link文件,想加载哪个插件就把哪个插件的Link文件放到 %ECLIPSE_HOME%links的目录中即可,使用与管理都很方便,建议千万不要放在默认的安装目录中;
    如果你的%ECLIPSE_HOME%与此不同,请修改XYZ.link文件里的路径

  7. 删除,关闭Eclipse

    删除%ECLIPSE_HOME%linksXYZ.link文件即可

    删除%ECLIPSE_HOME%PlugInsNewXYZ整个目录及文件

  8. 重新启动Eclipse即可
  使用

  Implementors插件安装方法采用上一节的《Eclipse使用技巧之插件管理》

  重新启动Eclipse后,在代码编辑区域,右键,可以看到增加了两个右键菜单Open Interface和Open Implementation,如下图所示:

unstj35gyjyf.jpg

  我们简单地创建一个示例工程,里面包含有一个接口类与两个实现该接口的实现类进行演示说明使用的方法。
接口类:IHelloWorld.java 
public interface IHelloWorld
{
String sayHelloWorld();
}


实现类一:HelloWorld1.java
public class HelloWorld1 implements IHelloWorld
{
public HelloWorld1()
{
super();
}

public String sayHelloWorld()
{
return "Hello World HelloWorld1";
}
}

实现类二:HelloWorld2.java
public class HelloWorld2 implements IHelloWorld
{
public HelloWorld2()
{
super();
}

public String sayHelloWorld()
{
return "Hello World HelloWorld2";
}
}
  在接口类IHelloWorld.java的方法sayHelloWorld()上面右键,在弹出的菜单中选择Open Implementation,如下图所示:

118db5mr247p.jpg

 
  单击菜单Open Implementation,于是会弹出该接口方法的相关实现类出来供你选择,如果该接口方法的实现类只有一个的话,就会直接跳转到实现类的代码上去了,不会出现提示选择框的。

v6bcnjzk8riy.jpg

  我们先选择实现类HelloWorld1,于是光标就会定位到实现类HelloWorld1.java的sayHelloWorld()方法上,并会加亮显示,如下图:

z1yze40734a5.jpg

 
  再回到在接口类IHelloWorld.java的方法sayHelloWorld()上面右键,在弹出的菜单中选择Open Implementation,如下图所示:

98r4y5a69f4z.jpg

  这次我们选择实现类HelloWorld2,于是光标就会定位到实现类HelloWorld2.java的sayHelloWorld()方法上,并会加亮显示,如下图:

pelbepv4khzc.jpg

 
  在接口中可以找到具体的实现,那在实现类里如何反查接口的定义呢?

  操作如下:在接口的实现类HelloWorld2.java的方法sayHelloWorld()上面右键,在弹出的菜单中选择Open Interface,如下图所示:

953065bn5955.jpg

  于是光标就会定位到接口类IHelloWorld.java的sayHelloWorld()方法上,并加亮显示,如下图:

l51631vn7987.jpg

  当然,如果你的方法没有相应的接口就不会去进行跳转了。

  总结


  此插件的功能虽小,但是方便了许多,估计在未来的Eclipse版本中会把这个功能集成进去了,就象Call Hierarchy插件一样。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131414/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/374079/viewspace-131414/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值