一、Java环境配置

JDK1.8或以上,已安装JDk1.8请跳过该步骤:

sudo apt-get install java

二、tomcat环境配置

参考:

https://github.com/yaozhongxiao/dev-tools/blob/master/opengrok/opengrok_step_by_step.md

下载tomcat,如apache-tomcat-8.5.45,并解压到:

/home/XXX/bin/apache-tomcat-8.5.45

(注意:XXX为当前的家目录)

执行startup.sh启动tomcat:

XXX@h:~/bin/apache-tomcat-8.5.45/bin$ ./startup.sh

Using CATALINA_BASE:   /home/XXX/bin/apache-tomcat-8.5.45

Using CATALINA_HOME:   /home/XXX/bin/apache-tomcat-8.5.45

Using CATALINA_TMPDIR: /home/XXX/bin/apache-tomcat-8.5.45/temp

Using JRE_HOME:        /usr/lib/jvm/java-8-openjdk-amd64

Using CLASSPATH:       /home/XXX/bin/apache-tomcat-8.5.45/bin/bootstrap.jar:/home/XXX/bin/apache-tomcat-8.5.45/bin/tomcat-juli.jar

Tomcat started.

在tomcat启动后,在浏览器中打开http://localhost:8080/,检查是否正常。

三、opengrok安装及布署

参考:

https://blog.csdn.net/gatieme/article/details/53083987

下载opengrok0.12.1.5(链接),并解压到:/home/XXX/bin/opengrok-0.12.1.5

新建bash文件(如bash_opengrok.sh)来配置:

# bash_opengrok.sh
echo "start bash_opengrok.sh ..."
#-------------------------------------------------------------------------------
#   - JAVA_HOME                   Full Path to Java Installation Root
#   - JAVA                        Full Path to java binary (to enable 64bit JDK)
#   - JAVA_OPTS                   Java options (e.g. for JVM memory increase
#-------------------------------------------------------------------------------
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
JRE_HOME=$JAVA_HOME/jre
JAVA_BIN=$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME PATH CLASSPATH#-------------------------------------------------------------------------------
#   - OPENGROK_DISTRIBUTION_BASE  Base Directory of the OpenGrok Distribution
#   - OPENGROK_INSTANCE_BASE      Base Directory of the OpenGrok User Data Area
#   - EXUBERANT_CTAGS             Full Path to Exuberant CTags
#   - OPENGROK_CTAGS_OPTIONS_FILE Full path to file with extra command line
#                                 options for CTags program (for its --options
#-------------------------------------------------------------------------------
#  opengrok home directory
export OPENGROK_INSTANCE_BASE=/home/XXX/bin/opengrok-0.12.1.5
export SCRIPT_DIRECTORY=$OPENGROK_INSTANCE_BASE/bin
export OPENGROK_DISTRIBUTION_BASE=$OPENGROK_INSTANCE_BASE/lib#  source code root
export SRC_ROOT=$OPENGROK_INSTANCE_BASE/database/src
#  generated data root
export DATA_ROOT=$OPENGROK_INSTANCE_BASE/database/data
#
EXUB_CTAGS=/usr/bin/ctags#-------------------------------------------------------------------------------
#   - OPENGROK_APP_SERVER         Application Server ("Tomcat" or "Glassfish")
#   - OPENGROK_WAR_TARGET_TOMCAT  Tomcat Specific WAR Target Directory
#   - OPENGROK_WAR_TARGET_GLASSFISH Glassfish Specific WAR Target Directory
#   - OPENGROK_WAR_TARGET         Fallback WAR Target Directory
#   - OPENGROK_TOMCAT_BASE        Base Directory for Tomcat (contains webapps)
#   - OPENGROK_GLASSFISH_BASE     Base Directory for Glassfish
#                                 (contains domains)
#-------------------------------------------------------------------------------
export OPENGROK_APP_SERVER=Tomcat
export OPENGROK_TOMCAT_BASE=/home/XXX/bin/apache-tomcat-8.5.45
export OPENGROK_WAR_TARGET_TOMCAT=$OPENGROK_TOMCAT_BASE/webapps
export OPENGROK_WAR_TARGET=$OPENGROK_TOMCAT_BASE/webapps
export CATALINA_HOME=$OPENGROK_TOMCAT_BASE

opengrok配置完成后,将/home/XXX/bin/opengrok-0.12.1.5/lib 目录下的 source.war 包拷贝到apache-tomcat-8.5.45/webapps 目录下,或者执行sudo ./OpenGrok deplay,系统会自动将 source.war 拷贝到 apache-tomcat-8.5.45/webapps下。

在浏览器中输入http://localhost:8080/source/,看到Opengrok界面证明OpenGrok运行成功。

四、建立源码索引

为了使得环境变量能够正确识别, 我们可以修改 OpenGrok 脚本的源代码, 重置 SRC_ROOT 和 DATA_ROOT 的值.

# 修改/home/XXX/bin/opengrok-0.12.1.5/bin/OpenGrok

SRC_ROOT="${OPENGROK_INSTANCE_BASE}/src"

改为

SRC_ROOT="${OPENGROK_INSTANCE_BASE}/database/src"

DATA_ROOT="${OPENGROK_INSTANCE_BASE}/data"

改为

DATA_ROOT="${OPENGROK_INSTANCE_BASE}/database/data"

接着我们将需要索引的源码放在 src 目录下即可, 当然我们其实没必要把源码真的放到这里, 只需要为其创建一个链接即可:

cd /home/XXX/bin/opengrok-0.12.1.5/database/src

ln -s ~/code/android7.0  android7.0

生成索引:

在/home/XXX/bin/opengrok-0.12.1.5/bin目录下,执行:

#./OpenGrok index

接着我们打开http://localhost:8080/source,就可以看到我们的源代码了。

电脑重启后,需要重新配置及部署,可参考bash_opengrok.sh执行:

echo "1.config..."source ~/bashmy/bash_config_opengrok.shecho "2.start opengrok..."$OPENGROK_TOMCAT_BASE/bin/startup.shecho "3.index..."$OPENGROK_INSTANCE_BASE/bin/OpenGrok deploy$OPENGROK_INSTANCE_BASE/bin/OpenGrok index

Ubunt14.04搭建opengrok环境相关推荐

  1. Ubuntu16.04搭建OpenGrok环境

    搭建的目标平台系统版本: Ubuntu 16.04.2 LTS  . 本方法对其它ubuntu版本同样适用. 准备以下Tools: apache-tomcat-9.0.8(https://tomcat ...

  2. ubuntu18.04搭建SLAM环境 转 高翔 十四讲匹配环境

    ubuntu18.04搭建SLAM环境_stjuliet的博客-CSDN博客_ubuntu安装slam

  3. Ubuntu16.04 搭建mujoco环境+强化学习gym

    (2022)Ubuntu16.04 搭建mujoco环境+强化学习gym 前言 一.Ubuntu16.04系统安装 二.mujoco安装 1.安装教程 2.程序验证 三.mujoco-py 安装 1. ...

  4. ubutnu16.04搭建LAMP环境(搭建wordpress博客)

    本次讲的是ubuntu的16.04版,通过搭建Lamp环境来建立wordpress博客网站.其他的linux版本也可以参考. 安装之前最好先更新一下系统软件库.命令:sudo apt-get upda ...

  5. 天嵌E9卡片i.mx6q-Linux12.04搭建nfs环境以及从nfs启动开发板

    最近导师丢了一个图像处理的项目,要用嵌入式来实现.于是买了一块天嵌近期推出的E9卡片i.mx6q板子,这款板子算是功能比较全面,基本上要用的驱动都给实现了.刚开始接触嵌入式,之前也没用过Linux系统 ...

  6. ubuntu20.04搭建lamp环境 +制作网页

    一.准备工作 二.安装apache2 三.安装mysql 四.安装php 五.安装depress 准备工作 配置虚拟机安装ubuntu20.04 配置环境及相关设置(配置中文及防火墙等) 安装apac ...

  7. Ubuntu16.04搭建caffe环境(cpu-only)与Python调用

    2019独角兽企业重金招聘Python工程师标准>>> 本文参考caffe官网教程以及网上的两篇教程:Ubuntu14.04+CPU+Python的Caffe安装教程.Caffe学习 ...

  8. ubuntu 16.04搭建OpenGrok

    //查看当前ubuntu系统版本 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xen ...

  9. 1.EdgeX实战 Ubuntu18.04搭建运行环境

    文章目录 前言: 1.搭建Ubuntu18.04服务器平台 2.安装docker和docker-compose 3.运行EdgeX 4.使用浏览器访问EdgeX 前言: 想着把之前arduino和树莓 ...

  10. ubuntu18.04搭建python环境

    注意:我使用的是虚拟机,在操作前请确保虚拟机可以访问到网络. 1.安装python3.9.0解释器,配置环境变量 2.配置虚拟环境 一.安装python3.9.0 到 /opt/python39 #更 ...

最新文章

  1. 哈佛大学 NLP 组开源神经机器翻译系统 OpenNMT
  2. js技巧--转义符\的妙用
  3. import org.apache.http.xxxxxx 爆红,包不存在之解决办法
  4. C#中的DataSet添加DataTable问题
  5. 【Django】ORM操作#2
  6. JDK8中的新时间API:Duration Period和ChronoUnit介绍
  7. java将字符串转换成可执行代码
  8. Hybrid框架UI重构之路:一、师其长技以自强
  9. JQuery 中简单的几个 类选择器 使用方法
  10. listView多布局
  11. H.264 NAL层解析
  12. 奶茶店收银系统php版,奶茶店收银系统
  13. QAM调制解调的仿真实现
  14. matlab画累计直方图_科学网—matlab 绘制直方图——常用命令 - 范凯波的博文
  15. [美国]《霍比特人2:史矛革之战》[蓝光1080P.720P.中英双字][2013年奇幻动作]
  16. MTK MT6577 Android驱动设置方法资料分享
  17. 信息安全意识分享—电子邮件安全
  18. Kubernetes之ServiceAccount+Secret(超详细汇总)
  19. 关于计算机的英语谜语,英语的谜语大全及答案
  20. 如何在电脑/手机上将JPEG图片保存为PDF?

热门文章

  1. python中print的用法_Python中print用法里面% ,%s 和 % d 代表的意思
  2. Arm 公司推出了 Mbed linux OS
  3. 绘制神经元的结构模式图,神经元结构示意图简易
  4. 基于XMPP协议的Android即时通信系(http://blog.csdn.net/lnb333666/article/details/7471292)...
  5. 打印机能两个计算机共用吗,打印机共享线_两台电脑用一台打印机_分线器可以接打印机吗...
  6. Representation Learning 表示学习(简单笔记)
  7. maven 生成脚手架_如何通过脚手架和自动表格生成加速流星开发
  8. android imageview图片崩溃,安卓 ImageView 的使用及崩溃闪退、空白原因
  9. 安科瑞无线测温装置,多点温度在线测温装置
  10. 怎样调整计算机显示屏窗口,电脑显示器怎么调节参数