Android下的配置管理之道之OpenGrok代码索引环境搭建

本文详细介绍了OpenGrok的安装过程,包括JAVA环境、Tomcat服务器的配置,以及如何在Docker环境下部署OpenGrok索引。重点讲述了如何通过修改源码并添加LoginFilter实现使用ldap登录功能,对ldapURL和searchBase进行配置,并讨论了遇到的问题与解决方案。
摘要由CSDN通过智能技术生成

1 OpenGrok介绍

OpenGrok 是一个快速, 便于使用的源码搜索引擎与对照引擎, 它能够帮助我们快速的搜索、定位、对照代码树. 接下来就具体讲解一下 OpenGrok 的安装及使用.

2 安装OpenGrok

所需依赖Requirements

You need the following:
JDK 1.8 or higher  java 版本需要1.8或者更高的
OpenGrok '''binaries''' from https://github.com/OpenGrok/OpenGrok/releases (.tar.gz file with binaries, not the source code tarball !)下载的包要是二进制的包,不是源码包,源码包你还要编译的。
 
 
https://github.com/universal-ctags for analysis (avoid Exuberant ctags, they are not maintained anymore) 
需要 universal-ctags 命令的 (ctags貌似有2个流派吧. Exuberant Ctags  和 ctags-universal )
 
A servlet container like GlassFish or Tomcat 8.0 or later also running with Java at least 1.8
需要servlet容器,推荐,也是我们常用的是tomcat,目前可以使用tomcat8了。或者tomcat 使用docker来 docker pull tomcat:9.0
If history is needed, appropriate binaries (in some cases also cvs/svn repository) must be present on the system (e.g. Subversion or Mercurial or SCCS or ... )
如果浏览代码索引的时候,想看代码的 历史记录。例如代码是git管理的,你的环境也要安装git的。
 
2GB of memory for the indexing process (bigger deployments will need more)
内存比较消耗的,代码很多的情况内存要大。要设置-Xmx参数的.
a recent browser for clients - IE, Firefox, recent Chrome or Safari
Optional tuning (see https://github.com/oracle/opengrok/wiki/Tuning-for-large-code-bases)
一个客户端浏览器。IE浏览器,火狐浏览器,谷歌浏览器,Safari浏览器。这不是废话嘛.......
 

安装JAVA运行环境

OpenGrok 是基于 JAVA 的, 因此我们首先需要 JDK 和 JRE 来支持其运行

新版本的opengrok需要jdk8了

Latest Java 1.8


安装Web服务器-Tomcat

#Ubuntu14.04 的源中已经提供了Tomcat 7 的包

sudo apt-get install tomcat7

# 如果是16.04 可以安装tomcat8了。

安装OopenGrok

从https://github.com/OpenGrok/OpenGrok/releases 下载最新的安装包,注意下载的是二进制包
而不是源码包。解压放到固定位置上。
 
 
例如 安装到 /opengrok 目录下面. 类似于opengrok的home目录了.
 
首选新建几个目录
mkdir /opengrok/{src,data,dist,etc,log}  # The indexer will need to write to /opengrok/{data,log} and the web application will need to be able to read from /opengrok/{src,etc,data}
 
解压安装包
tar -C /opengrok/dist --strip-components=1 -xzf opengrok-X.Y.Z.tar.gz
 
配置logger文件
cp /opengrok/dist/doc/logging.properties /opengrok/etc
 
 
下载android代码
cd /opengrok/src
git clone https://github.com/githubtraining/hellogitworld.git
git clone https://github.com/OpenGrok/OpenGrok
 
 
安装indexer相关工具. 采用第二种方式比较好.
第1种方式,
  python3 -m pip install opengrok_tools.tar.gz
第2种方式,
  cd /opt/opengrok
  python3 -m venv opengrok-tools
  opengrok-tools/bin/python -m pip install opengrok_tools.tar.gz
 
 
部署 source.war 到 tomcat 下面
opengrok-deploy -c /opengrok/etc/configuration.xml \
    /opengrok/dist/lib/source.war /var/lib/tomcat8/webapps
例如:
opengrok-deploy  -c dat_root/ctags/etc/configuration.xml source.war tomcat/webapps/ctags.war 
 
创建索引
opengrok-indexer \
    -J=-Djava.util.logging.config.file=/opengrok/etc/logging.properties \
    -a /opengrok/dist/lib/opengrok.jar -- \
    -c /usr/local/bin/ctags \
    -s /opengrok/src -d /opengrok/data -H -P -S -G \
    -W /opengrok/etc/configuration.xml -U http://localhost:8080/source
 
or
java \
    -Djava.util.logging.config.file=/opengrok/etc/logging.properties \
    -jar /opengrok/dist/lib/opengrok.jar \
    -c /usr/local/bin/ctags \
    -s /opengrok/src -d /opengrok/data -H -P -S -G \
    -W /opengrok/etc/configuration.xml -U http://localhost:8080/source
 
例如:
opengrok-indexer \
    -J=-Djava.util.logging.config.file=opengrok/doc/logging.properties \
    -a 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值