【OpenGrok代码搜索引擎】一、OpenGrok简介

【OpenGrok代码搜索引擎】一、OpenGrok简介OpenGrok是一个快速的、非常有用的代码搜索和交叉引用引擎。它由Java语言编写而成。它可以帮助你快速的搜索,交叉引用和索引你的代码树。它可以很好的识别多种应用程序文件格式和代码版本控制工具。

大家好,又见面了,我是你们的朋友全栈君。

一、介绍

OpenGrok是一个快速的、非常有用的代码搜索和交叉引用引擎。它由Java语言编写而成。它可以帮助你快速的搜索,交叉引用和索引你的代码树。它可以很好的识别多种应用程序文件格式和代码版本控制工具。

官网请参考:

{OpenGrok by OpenGrok

 https://github.com/oracle/opengrok

二、功能介绍

  1. 可以搜索全文本,定义,符号,路径和修改记录(这个很重要,可以帮助我们回溯某一笔修改);
  2. 可以将搜索限制在某个子树(简单来说就是可以将搜索范围限制在某个子目录下)
  3. 可以增量更新索引(也就是说)
  4. 支持google搜索类似搜索语法
  5. 支持搜索某个时间段内被修改的文件
  6. 支持使用通配符比如*或?
  7. 支持在搜索结果中显示匹配的行
  8. 为版本控制工具(如Mercurial,CVS,SVN,SCCS和TeamWare)提供了只读的web接口,包括文件修改提交记录/任何两个版本的文件差异(像udiffs和sdiffs)
  9. 支持在线交叉引用查询,包括语法高亮,可通过CSS进行高度定制化的UI显示
  10. 可拓展性强,可为新的编程语言和新的版本控制工具编写插件;

三、主要组成部分

【OpenGrok代码搜索引擎】一、OpenGrok简介

 

3.1 org.opengrok.analysis

负责分析程序,源文件,zip,tar,文档(包括man page,xml,html),图片等。

3.2 org.opengrok.index

创建和更新Lucene索引(开源的全文搜索引擎),递归地沿着目录树向下移动。

3.3 org.opengrok.search

提供搜索结果的界面,文本匹配等。

3.4 org.opengrok.history

对源码版本控制器修订历史的抽象,简单来讲将版本控制器中的源码的修改历史进行同步展示;

3.5 org.opengrok.web

webapp模块,主要是用于部署在web服务器上,如tomcat等。

四、竞品对比矩阵 

【OpenGrok代码搜索引擎】一、OpenGrok简介

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131899.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Scripting.FileSystemObject 文件操作

    Scripting.FileSystemObject 文件操作Scripting.FileSystemObject方法或者属性描述BuildPath() 生成一个文件路径CopyFile()复制文件 CopyFolder() 复制目录CreateFolder()

    2022年7月14日
    23
  • Eclipse 导入activiti包里的 activiti-webapp-explorer2 项目

    Eclipse 导入activiti包里的 activiti-webapp-explorer2 项目

    2021年8月31日
    53
  • centos在设置时区

    centos在设置时区

    2022年1月15日
    45
  • linux 进程抓包命令,linux抓包命令之tcpdump详解[通俗易懂]

    linux 进程抓包命令,linux抓包命令之tcpdump详解[通俗易懂]顾名思义,tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息,tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具.实用命令实例:(1).默认启动#普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包.[[…

    2022年6月17日
    71
  • TensorFlow 安装教程

    趁着十一放假期间,有这么一点空闲时间,自己看了些tensorflow的资料,顺便在自己的机器上安装了一下tensorflow的环境。安装过程还算比较顺利,现在跟大家分享一下。1.准备好Anaconda环境tensorflow是属于很高层的应用。高层应用的一个比较大的麻烦就是需要依赖的底层的东西很多,如果底层依赖没有弄好的话,高层应用是没法玩转的。在极客学院有关tensorflow的教程中,提到了

    2022年4月9日
    62
  • 进程的挂起状态详细分析方法_线程挂起

    进程的挂起状态详细分析方法_线程挂起通常我们所认为的进程有五大状态,新建态,就绪态,阻塞态,运行态,退出态。 下面是示意图: 事实上还存在被挂起的进程。    交换的需要前面图中三个基本状态(就绪态、运行态和阻塞态)提供了一种为进程行为建立模型的系统方法,并指导操作系统的实现。 但是,可以证明往模型中增加其他状态也是合理的。下面考虑一个没有使用虚拟内存的系统,每次执行中的进程必须完全载入内存。因此

    2025年7月16日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号