在Ubuntu16.04上使用Open Grok
Open Grok是一个强大的源代码搜索和对照引擎,是Open Solaris的源文件浏览及搜索工具。虽然Open Solaris已经不复存在,但这个工具仍然处于开发与维护之中。 相信我,绝对值得你拥有!

1. 安装Open Grok
1.1 安装Tomcat
sudo apt-get install tomcat8
1.2 安装ctags
sudo apt-get install exuberant-ctags
1.3 下载Open Grok并安装到/opt
最新的版本是1.1-rc18, 可用wget下载到本地,例如:
wget https://github.com/oracle/opengrok/releases/download/1.1-rc18/opengrok-1.1-rc18.tar.gz
然后解压缩,
tar zxf opengrok-1.1-rc18.tar.gz
最后将opengrok移动到/opt下面存放。
sudo mv opengrok-1.1-rc18 /opt
cd /opt
sudo ln -s opengrok-1.1-rc18 opengrok
2. 配置Tomcat以使用Open Grok
2.1 Copy opengrok/lib/soure.war to /var/lib/tomcat8/webapps/
root# cp /opt/opengrok/lib/source.war /var/lib/tomcat8/webapps
2.2 Update WEB-INF/web.xml
root# cp /var/lib/tomcat8/webapps/source/WEB-INF/web.xml /tmp/web.xml
root# vi /var/lib/tomcat8/webapps/source/WEB-INF/web.xml
// ...Edit L8...
// 8 <param-value>/var/opengrok/etc/configuration.xml</param-value>
// ...Replace /var with /opt
root# diff /var/lib/tomcat8/webapps/source/WEB-INF/web.xml /tmp/web.xml
8c8
< <param-value>/opt/opengrok/etc/configuration.xml</param-value>
---
> <param-value>/var/opengrok/etc/configuration.xml</param-value>
3. 体验Open Grok
3.1 创建一个样板工程
veli$ cd /var/tmp
veli$ mkdir git
veli$ cd git
veli$ git clone https://github.com/idorax/vCodeHub.git
veli$ sudo /opt/opengrok/bin/OpenGrok index /var/tmp/veli/git
3.2 体验开始!
- 首页

- 某个代码页

扩展阅读:
结束语: Open Grok是基于网页的代码搜索和比对工具,简单易用且高大上。当然,如果你始终钟情于LXR,没啥子好说的,也挺好! (P.S. 本人特别不喜欢单机版的Source Insight!)
Education is not the filling of a pail but the lighting of a fire. | 教育不是注满一桶水,而是点燃一把火。
在Ubuntu16.04上使用Open Grok的更多相关文章
- Ubuntu16.04上用源代码安装ICE
ubuntu16.04上用源代码安装ICE
- Ubuntu16.04上安装neo4j数据库
什么是neo4j数据库? neo4j数据库是图数据库的一种,属于nosql的一种,常见的nosql数据库还有redis.memcached.mongDB等,不同于传统的关系型数据库,nosql数据也有 ...
- 在ubuntu16.04上安装eclipse
在ubuntu16.04上安装eclipse 一.下载 首先我们需要安装jdk1.8及其以上,然后从官网:https://www.eclipse.org/downloads/上下载,需要注意 ...
- 在ubuntu16.04上编译android源码【转】
本文转载自:http://blog.csdn.net/fuchaosz/article/details/51487585 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...
- ubuntu16.04上在使用搜狗输入法时,按shift不能正常切换中英文
问题描述: ubuntu16.04上在使用搜狗输入法时,不知道把什么组合键给错按了,导致了按shift不能正常切换中英文,这是一件很烦恼的事儿! 解决步骤: 1,终端输入打开: fcitx-confi ...
- primecoin在ubuntu16.04上部署服务:
primecoin在ubuntu16.04上部署服务: 一.下载Tomcat,Jdk,primecoin(公司内部文件) 注意Tomcat版本需要高于Jdk的,不然会报错. 二.把它们都解压到你要的安 ...
- Ubuntu16.04上安装cudnn教程和opencv
https://blog.csdn.net/wang15061955806/article/details/80791112 Ubuntu16.04上安装cudnn教程 2018年06月24日 14: ...
- 【MindSpore】Ubuntu16.04上成功安装GPU版MindSpore1.0.1
本文是在宿主机Ubuntu16.04上拉取cuda10.1-cudnn7-ubuntu18.04的镜像,在容器中通过Miniconda3创建python3.7.5的环境并成功安装mindspore_g ...
- 在Ubuntu16.04上部署LXC容器管理系统的相关步骤
打算安装一个LXC linux容器管理的软件来分配使用资源并配置不同的编程环境,这样就方便大家的使用,步骤如下(宿主机的环境都搭建好了,对应显卡的驱动等): 参考网站: 简单入门和相关指令总结:htt ...
随机推荐
- Spring MVC深入讲解
一.前言: 大家好,Spring3 MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了.Spring3 MVC结构简单,应了那句话简单就是美,而 ...
- EBS Webservice Timeout,HTTP Server Return "500 Internal Server Error"
http://blog.itpub.net/26687597/viewspace-1207571/ 基于Oracle EBS R12,开发了一个Webservice用于返回某项主数据,当请求的数据量非 ...
- 如何将Jenkins multiline string parameter的多行文本优雅的保存为文件
[现象]: 使用multi-line string parameter获取的文本变量,在jenkins shell里面显示为单行文本(空格分割). [问题]:能否转换为多行文本,并存入文件. [解决方 ...
- ASP.Net C#---Excel导入导入后台方法
https://www.cnblogs.com/chendaye/p/10693983.html 这里写了Excel的导入导入方法, 后台我用的是MVC 以及 C#语句用来在后台做接受和输出数据 / ...
- c# 输入多个数字,当输入不是数字时显示出刚输入的所有数并按降序
输入多个数字,当输入不是数字时显示出刚输入的所有数并按降序 class Program { static void Main(string[] args) { //定于一个集合 List<int ...
- js中的基本类型与引用类型学习
一.基本数据类型 ECMAScript 有 5 种原始类型(primitive type),即 Undefined.Null.Boolean.Number 和 String,也称为基本数据类型,ES6 ...
- SPOJ Longest Common Substring II
题目连接:戳我 题目大意:求n个字符串的最长公共子串. 它的简化版--这里 当然我们可以用SA写qwq,也可以用广义SAM写qwq 这里介绍纯SAM的写法...就是对其中一个建立后缀自动机,然后剩下的 ...
- Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'img' at row 1故障
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'img' at ro ...
- 900. RLE Iterator
Write an iterator that iterates through a run-length encoded sequence. The iterator is initialized b ...
- spring boot 使用application.properties 进行外部配置
application.properties大家都不陌生,我们在开发的时候,经常使用它来配置一些可以手动修改而且不用编译的变量,这样的作用在于,打成war包或者jar用于生产环境时,我们可以手动修改环 ...