搭建Opengrok
OpenGrok是一个毫秒级代码搜索的工具, 它最大的优点就是搜索速度贼快
1.安装jdk
sudo apt install openjdk-8-jdk
2.安装编译ctags
sudo apt install exuberant-ctags
git clone https://github.com/universal-ctags/ctags.git
cd ctags
./autogen.sh
./configure
make
sudo make install
3.下载并解压Tomcat
# http://tomcat.apache.org/
tar -xvf apache-tomcat-9.0.37.tar.gz
4.启动Tomcat(关闭Tomcat脚本是shutdonw.sh)
sh apache-tomcat-9.0.37/bin/startup.sh
(关闭Tomcat脚本是shutdonw.sh)
使用浏览器打开http://本地服务器ip:8080
5.下载解压OpenGrok# https://oracle.github.io/opengrok/
tar -xvf opengrok-1.3.16.tar.gz
6.复制source.war到Tomcat
# 可以重命名source,并且链接也会改成对应的名称
cp opengrok-1.3.16/lib/source.war apache-tomcat-9.0.37/webapps/
7.配置环境变量
sudo vi ~/.bashrc
# opengrok
export JAVA_HOME=/usr
export OPENGROK_TOMCAT_BASE=/home/xxx/opengrok/apache-tomcat-9.0.37
export CATALINA_HOME=/home/xxx/opengrok/apache-tomcat-9.0.37
export OPENGROK_APP_SERVER=Tomcat
export OPENGROK_INSTANCE_BASE=/home/xxx/opengrok/opengrok-1.3.16
export LANG=zh_CN.gb2312
source ~/.bashrc 使环境变量生效
8.创建对应目录
mkdir opengrok-1.3.16/etc opengrok-1.3.16/src opengrok-1.3.16/data
9.cp 或者软连接 我们的代码
cp -r xxx opengrok-1.3.16/src/test # or ln -s dirpath dir_name
10.生成索引(之后每次在src目录下有更新需要重新索引)
java -jar opengrok-1.3.16/lib/opengrok.jar -P -S -v -s opengrok-1.3.16/src -d opengrok-1.3.16/data -W opengrok-1.3.16/etc/configuration.xml
找不到ctags 时 可以which ctags 或者在下载目录find ,命令加上 -c /xxx/ctags
11.修改实际configuration路径,将CONFIGURATION的value改成configuration.xml实际路径。(生成索引后会产生此文件)
# sudo vi apache-tomcat-9.0.37/webapps/source/WEB-INF/web.xml <context-param><description>Full path to the configuration file where OpenGrok can read its configuration</description><param-name>CONFIGURATION</param-name><param-value>/home/xxx/opengrok/opengrok-1.3.16/etc/configuration.xml</param-value></context-param>
如果有端口冲突可以手动修改端口:
- 将server端口由6005改完8006
- 将HTTP端口由8080改为8081
- 将AJP端口由8009改为8010
# sudo cat conf/server.xml
<Server port="8006" shutdown="SHUTDOWN"><Connector port="8081" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" /><Connector protocol="AJP/1.3"address="::1"port="8010"redirectPort="8443" />
重启
sh apache-tomcat-9.0.37/bin/shutdown.sh && sh apache-tomcat-9.0.37/bin/startup.sh
搭建Opengrok相关推荐
- Windows10搭建opengrok服务器
目录 一.JAVA安装与环境配置 1. jdk下载与安装 2.环境变量配置 3.检查java是否安装成功 二.ctags安装 三.opengrok安装与配置 1.安装 2.配置: 四.tomcat安装 ...
- Ubuntu16.04搭建OpenGrok环境
搭建的目标平台系统版本: Ubuntu 16.04.2 LTS . 本方法对其它ubuntu版本同样适用. 准备以下Tools: apache-tomcat-9.0.8(https://tomcat ...
- android源码opengrok,搭建OpenGrok 快速索引android源码
openggrok可以快速浏览源码,查找相关文件及函数等. 代码再服务器,本地使用opengrok搜索. 搭建环境等都在服务器进行. 注意:一下配置均在服务器进行,打开网址均在本地进行. 代码再云上, ...
- [HOW TO]-centos环境搭建opengrok笔记
安装http httpd -version yum install httpd systemctl start httpd.service chkconfig httpd on //设置开机自动启动 ...
- ubuntu 16.04搭建OpenGrok
//查看当前ubuntu系统版本 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xen ...
- Opengrok本地搭建(Windows10)
Opengrok本地搭建(Windows10) 下载解压OpenGrok 下载解压Tomcat(8.x及以上版本),添加环境变量:TOMCAT_HOME=D:\Program Files\apache ...
- OpenGrok搭建方法
OpenGrok简介 OpenGrok为一个方便快速的源码搜索及交叉引用查询引擎.它以Java编写,可用于源码搜索.交叉引用查询.以及源码树定位.它支持多种编码语言和多种代码版本控制引擎系统.Open ...
- Linux上OpenGrok的搭建过程
OpenGrok(官网)是一个开源的源代码搜索引擎,免费.高效.功能强大,与sourceinsight相比毫不逊色.具体优点网上介绍的很多了,请自行搜索. 下面是我在自己CentOS7.3服务器上搭建 ...
- Ubuntu下的源码浏览器Opengrok搭建 并集成LDAP认证登陆
-前言 很多做android开发的小伙伴都知道,快速检索代码的利器opengrok,检索代码非常方便,本人之前多次搭建opengrok,只不过最近迫于代码安全性考虑,终于搞定opengrok+tomc ...
最新文章
- android intent短信,android – 通过Intent发送短信,并知道短信是否已被发送
- 第二章 如何学习Linux(鸟哥的Linux私房菜基础学习篇)
- asm 比 ucontext 快
- 采购订单增强(根据公司代码、采购订单类型等相关订单信息给采购订单税码设置默认值)
- Git 分支管理策略
- Spring Boot 动态注入的两种方式 1
- 工作148:父子组件传值 获取时间戳
- Token实现单点登陆
- 趣学 C 语言(九)—— 复杂指针解析
- sendmail邮件加密与身份验证
- Stanford Parser demo错误:Unsupported major.minor version 52.0 error
- linux进入uvc目录,ubuntu-Linux系统读取USB摄像头数据(uvc)
- Android全局修改字体大小,Android 应用全局字体调节或禁止随系统字体大小更改
- Ashampoo® Snap 4 截图工具 + 有效注册码
- LGTM,XGBOOST,LIGHTGBM
- 图像同时对比度、空间分辨率、幅度分辨率的实现
- 符号三角形问题 java_算法java实现--回溯法--符号三角形问题
- python with打开多个文件_在python中使用with打开多个文件的方法
- 【自动控制原理】——第二章——数学模型【时域】【复频域】【梅森增益公式】
- Will not attempt to authenticate using SASL (unknown error) (org.apache.zookeeper.ClientCnxn)