Java是开源的世界,如何快速的搜索到你需要的Java源码呢?
2009年7月17日,GrepCode团队发布了一个有趣的 Java源码搜索引擎-GrepCode 。与现有的各种搜索引擎相比,Java源码搜索引擎-GrepCode把Java源码搜索带到了一个新的高度。Java源码搜索引擎-GrepCode 不但提供了语法的高亮显示和JavaDoc的现实,还提供了一种界面非常友好的的Java类型集成视图,便于人们搜索。用户可以很容易的找到某个特定版本代码依赖的工程代码。Java源码搜索引擎-GrepCode 同时允许用户从某个Java方法的调用直接定位到调用的Java方法体。堆栈跟踪搜索是 Java源码搜索引擎-GrepCode的另一大亮点,该功能允许程序员快速定位某个异常对应的代码,而不需要下载整个功能的源码包或者第三方的源码包。
笔者使用Java源码搜索引擎搜索”tapestry”
返回结果是两栏: Types和 Projects,其中Types返回的结果是tapestry各个版本中的接口和类的定义列表,而Projects返回的结果是tapestry各个版本的包名称,可见Java源码搜索引擎-GrepCode 的返回结果十分的清晰人性化,是开发人员手头查阅源码的首选!

Java源码搜索引擎-GrepCode网址:

http://grepcode.com

Eclipse的GC插件和任何其它的Eclipse插件一样,都可以通过以下步骤安装:

  1. Help -> Install new software.

  2. 点击"Add..."按钮,输入Name 和 GrepCode 的更新网址http://repository.grepcode.com/java/ext-eclipse/
  3. 点击 "Next"按钮进入"Install Details" 页

  4. 接受许可说明并且点击"Finish"按钮。

用法

经过如上步骤在Eclipse中成功安装GC插件以后,我们可以使用它浏览我们代码中使用的开源库中的源码,举例说明如下:

    • 假设你正在上一个项目,涉及到一个开源库,如JGroups。你的项目注册作为其依赖的JGroups-all.jar(即:假设在你的工程中使用到了JGroups这种开源代码库中的某个类),如下所示。

    • “JGroupsTest”工程中用的JGroups类库中的“JChannel”类。在“JChannel”类上我们按下F3键查看“JChannel”类源码时,我们会发现“Class File Editor”中提示“未找到源代码”,我们只能浏览到“JChannel”的部分说明,并不是我们想看的“JChannel”类的源代码。

    • 虽然在“Class File Editor”视图中我们没有看到“JChannel”类源码,但是我们可以点击工具面板上的“GC Search”按钮,通过GC插件搜索GrepCode内的的“JChannel”类。搜索结果显示在IDE中的“GC Search”Tab页中。
    • 现在我们可以选择跟我们工程相对应的源码版本来查看"JChannel"类的源代码了。

    • 我们也可以通过快捷键“Ctrl+M”最大化"Class File Editor"视窗以方便我们阅读源码。

[Eclipse插件] Eclipse中如何安装和使用GrepCode插件的更多相关文章

  1. Eclipse中如何安装和使用GrepCode插件

    GrepCode(GC)Eclipse插件允许Eclipse用户在Eclipse IDE中搜索由GrepCode提供的工厂类.本教程介绍如何安装和使用插件.使用Eclipse3.5(Galileo)的 ...

  2. Eclipse中如何安装和使用GrepCode插件 (转)

    GrepCode(GC)Eclipse插件允许Eclipse用户在Eclipse IDE中搜索由GrepCode提供的工厂类.本教程介绍如何安装和使用插件.使用Eclipse3.5(Galileo)的 ...

  3. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  4. FineReport中如何安装移动端H5插件

    1. HTML5报表插件安装及使用编辑 插件安装 插件网址以及设计器插件安装方法和服务器安装插件的方法可以官网上面搜索,这里就不做详细介绍了. 移动端HTML5报表使用方法 安装好插件后,在浏览器中调 ...

  5. js检测浏览器中是否安装了flash播放插件

    这两天工作中需要在网页中嵌入flash小游戏,我使用的是swfobject.js version:1.5.其他方面都很好,唯独版本检测这里一直没有搞通,后来实在无奈之下,改用js来检测浏览器的flas ...

  6. JS 检测浏览器中是否安装了特定的插件

    1.检测非IE浏览器 可以使用plugins数组来达到这个目的,例: //检测插件(在IE中无效) function hasPlugin(name){ name = name.toLowerCase( ...

  7. 每日vim插件--vim中的文本对象及相关插件

    最近在个人博客上 http://foocoder.com  每天都会介绍一个vim插件,想起来园子也好久没更新了,也来更新一篇. 今天按读者留言的要求,介绍下文本对象.同时还会介绍我在用的几个文本相关 ...

  8. Idea安装findbugs插件,以及findbugs安装find security bugs插件

    第一:先讲述Idea怎么安装findbugs插件 具体操作如下面的图所示: 然后就可以安装findbugs 第二:findbugs怎么安装find security bugs这个find bugs的插 ...

  9. Eclipse中如何安装Git插件

    现在的Eclipse一般都自带Git插件. 检查Eclipse是否有Git插件: 方法一:Help—>About Eclipse,出现下面的图标,说明Eclipse中已有Git插件,就不用安装了 ...

随机推荐

  1. python 基础习题

    1.8<<2等于? 8 ---> 1000 32 ---> 100000 -----------结果--- 32 2.通过内置函数计算5除以2的余数 print(dir()) ...

  2. 《逐梦旅程 WINDOWS游戏编程之从零开始》笔记8——载入三维模型&Alpha混合技术&深度测试与Z缓存

    第17章 三维游戏模型的载入 主要是如何从3ds max中导出.X文件,以及如何从X文件加载三维模型到DirextX游戏程序里.因为复杂的3D物体,要用代码去实现,那太反人类了,所以我们需要一些建模软 ...

  3. umount.nfs: device is busy解决办法

    fuser -km /app/nfs/ https://blog.csdn.net/x_i_y_u_e/article/details/42914817

  4. Android点击图标重新启动问题

    原文:http://blog.csdn.net/jianiuqi/article/details/54091181 项目中的小问题:发现应用打包安装后按home键切换到后台后,点击应用图标又重新打开了 ...

  5. CentOS7下Samba的安装与配置

    一.Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享 ...

  6. KMP算法-->深入浅出

    说明: 在网上查了各种资料,终于对KMP算法有了透彻的了解,都说KMP特简单,我咋没有察觉呢?难道是智商不在线?或许都是骗纸? 还是进入正题吧,整理整理大佬的blog KMP算法简介: KMP算法是一 ...

  7. 【leetcode】371. Sum of Two Integers

    题目描述: Calculate the sum of two integers a and b, but you are not allowed to use the operator + and - ...

  8. ZOJ 3497 Mistwald

    矩阵快速幂. 邻接矩阵的$P$次方就是走$P$步之后的方案数,这里只记录能否走到就可以了.然后再判断一下三种情况即可. #pragma comment(linker, "/STACK:102 ...

  9. Flask实战第40天:图片验证码生成技术

    图片验证码生成 安装pillow pip install pillow 在utils下新建python package命名为captcha 把需要需要用到的字体放在captcha下 编辑captcha ...

  10. java中byte取值范围为什么是 -128到127

    概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为“0”表示正数,最高位为“1”表示负数.正数补码为其本身:负数补码为其绝对值各位取反加1:例如:+21,其二进制表示形式是000101 ...