OpenGrok介绍「建议收藏」

OpenGrok介绍「建议收藏」2019独角兽企业重金招聘Python工程师标准>>>…

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

一、介绍 openGrok是用于代码在线阅读和搜索以及交叉引用的引擎使用Java语言编写的系统。它帮助你检索/索引和本地目录树导航。它可以理解各种编程语言的文件格式和各种配置管理工具。可以配合Mercurial/Git/SCCS/RCS/CVS/Subversion/Teamware/ClearCase/Perforce/Monotone和Bazaar。

二、安装环境 1. 最新的JDK 2. Servlet容器, 如Tomcat 8.x 3. Ctags 4. 代码版本管理工具 5. 如果自己编译,需要Ant/JFlex/Netbeans

三、使用 openGrok通常在servlet容器中运行(Tomcat)。 SRC_ROOT环境变量的值,是你工程代码的根目录。openGrok分析代码树并构建快速检索的索引,同时会解析代码在配置库中的不同版本的历史信息。解析过程中生成的数据会统一放在环境变量DATA_ROOT指定的目录中。

3.1 项目 OpenGrok中有项目的概念,一个项目对应SRC_ROOT下的一个目录,这个目录中文件是从配置库中检出的代码文件的工作区。 有了项目的概念一个OpenGrok应用可以处理多个项目,这样就不需要部署多个openGrok环境。一个应用可以处理多个代码配置库或项目。opengrok还可以处理项目或多个仓库的代码同步更新的脚本。 一个好的建议是为SRC_ROOT下的代码目录名称加上版本和分支的信息。如name-version-branch 实例: SRC_ROOT目录下可以有 openssh-head openssh-0.9.8-stable openssh-1.0.0-stable

每个目录都是从代码库中检出的工作区。在OpenGrok都被作为一个项目处理。

四、安装 4.1 Solaris平台使用*.p5p文件 4.1.0 安装 执行命令#pkg install –no-refresh -g /path/to/file/<package_name>.p5p opengrok 4.1.1更新 你可以通过*.p5p文件更新openGrop软件,更新的命令是 #pkg updatge –no-refresh -g /path/to/file/<package_name>.p5p ‘pgk://<publisher>/*’

五、配置 5.1 配置工程源码 在进行配置之前,首先需要从代码配置库中检出代码文件,启动opengrok应用。 在SRC_ROOT指定的目录下检出工程代码。openGrok不会自动更新检出的工程代码,需要你自己执行更新脚本。 如果是非分布式的配置管理工具(Subversion,CVS)可以不检出代码通过远程的方法来进行(不推荐使用此方式)。 如果要解析配置库的历史,需要安装配置管理工具,并给opengrok指定执行文件的所在的具体路径。 注意: opengrok 不处理连接文件。 如果你要忽略工程代码中的特定的目录及其子目录,可以在根目录中创建.opengrok_skip_history文件,将要忽略的目录写入其中。

5.2 使用opengrok shell脚本创建索引 在Linux系统用openGrok提供shell脚本来处理不同的任务,这些已在Solaris和其他Linux发行版本中验证过了。 5.2.1 应用部署 可以在其他用户下部署openGrok应用 #pfexec su – webservd $cd /usr/opengrok/bin $ ./OpenGrok deploy openGrok将在此目录下通过source.war进行部署。 5.2.2 DATA_ROOT目录配置 在openGrok生成索引的过程中会生成OpenGrok XML配置文件 configuration.xml并且会更新web应用。生成索引会花费很长时间,在这之后其可以自动更新。 第一次更新 $cd /usr/opengrok/bin SRC_ROOT默认是/var/opengrok/src $./OpenGrok index 否则使用 $./OpenGrok index <absolute_path_to_your_SRC_ROOT> 上面的命令将最新的索引信息更新如configurations.xml文件中。

openGrok定制化脚本,新增环境变量OPENGROK_INSTANCE_BASE默认是/var/opengrok如果opengrok的数据目录是/tank/opengrok 代码目录是/tank/source
$OPENGROK_VERBOSE=true OPENGROK_INSTANCE_BASE=/tank/opengrok ./OpenGrok index /tank/source
修改默认的配置文件
$ln -s /tank/opengrok/etc/configuration.xml /var/opengrok/etc/configuration.xml
更多的定制化脚本需要使用OPENGROK_CONFIGURATION这个环境变量。

5.2.3 局部索引更新

5.4 使用命令行更新索引 5.4.1 更新DATA_ROOT目录 opengrok有一些适合定期自动执行的脚本。opengrok.jar文件是可以直接执行的。 $java -jar opengrok.jar -s $SRC_ROOT -d $DATA_ROOT

5.4.2 部署和配置source.war 在source.war的web.xml文件中有如下参数可以修改 HEADER: HTML格式的文件,用于自定义欢迎页面和logo SRC_ROOT: 本地工程代码根目录的绝对路径 DATA_ROOT: 存放opengrok数据的目录绝对路径 5.4.3 路径描述 5.4.4 修改tomcat的配置参数 5.4.5 自定义ctags的配置

5.5 使用Java DB 存储历史缓存信息

转载于:https://my.oschina.net/hopeMan/blog/537550

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

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

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


相关推荐

  • telnet登陆路由器。。。「建议收藏」

    telnet登陆路由器。。。

    2022年1月27日
    104
  • 数据库错误:ORA-12154

    数据库错误:ORA-12154oracle数据库报错误:ORA-12154:TNS:无法解析指定的连接标识符其中一种可能是本地监听器设置错误打开NetManage以管理员身份运行会出现如下图画面:添加服务命名点击命

    2022年7月1日
    24
  • mysql数据类型有哪几种_数据库 数据类型

    mysql数据类型有哪几种_数据库 数据类型Mysql支持的多种数据类型主要有:数值数据类型、日期/时间类型、字符串类型。整数浮点数&定点数注:定点数以字符串形式存储,对精度要求高时使用decimal较好;尽量避免对浮点数进行减法和比较运算。时间/日期类型字符串类型blog-二进制大对象,用来存储可变数量的数据。…

    2022年9月20日
    0
  • vscode前端常用插件

    vscode前端常用插件vscode前端差用插件

    2022年7月25日
    8
  • Slurm基本用法(入门必看)

    本文描述Linux集群的基本Slurm用法。1.一个简单的Slurm脚本$catslurm-job.sh#!/usr/bin/envbash#SBATCH-oslurm.sh.out#SBATCH-pdefqecho”Inthedirectory:`pwd`”echo”Astheuser:`whoami`”echo”writethis…

    2022年4月3日
    555
  • 计算机弹歌曲乐谱大全绿色_小精灵钢琴谱简易版

    计算机弹歌曲乐谱大全绿色_小精灵钢琴谱简易版【小Z键盘钢琴】以下歌谱对应的键是跟默认键是不一样的,我已经打包了,只要把歌谱.ini改成系统.ini然后重启软件,这样就改好了,然后可以按照以下歌谱试弹一下!海阔天空就是此键盘钢琴的第一首钢琴曲(对不起,弹的时候是边看琴谱,边弹的,所以听起来太纠结了.)请到软件安装的目录查找!1.播放录音功能:点击播放按钮,会提示打开录音文件(XZ格式的文件)2.记录功能:点记录,会显示状态:”正在记录…

    2022年8月21日
    6

发表回复

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

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