Opengrok服务器搭建step by step

摘要:
以下步骤已由您自己验证。1) 安装jdk和tomcat。5) 转换OpenGrok。Vi/usr/local/openrock/bin/OpenGrok=============================================第213行,设置OpenGrok的安装目录,如下所示_ INSTANCE_BASE=“${OpenGrok_INSTANCE_BASE:-/usr/local/oppenrok}”第655~658行,添加tomcat的目录,前缀为${OpenGrok_tomcat_BASE}/var/lib/tomcat8/usr/local/tomcatLine236-240,注释掉第245-249行的内容,注释掉else#REQUIRED:SourceCode/RepositoryRoot#if[-n“${OPENGROK_SRC_ROOT}”]的内容;则SRC_ROOT=“${OPENGROK_SRC_ROOT}”#else#SRC_ROOT=“${OPENGROK-INSTANCE_BASE}/SRC”fi#REQUIRED:OpenGrokGenerateDataRoot##如果[-n“${OpenNGROK_DATA_ROOT}],则此区域通过“update”/“updateQuietly”重新构建;then DATA_ ROOT=“${OPENGROK_DATA_ROOT}”#else#DATA_ ROOT=“${OPENGROK-INSTANCE_BASE}/DATA”fi=============================================6)设置环境变量。这里我们使用一个脚本来实现它。需要注意的是,在红墨水部分,如果有多个项目,则必须在每次生成索引之前修改脚本“源”。

以下步骤都是经过自己亲手验证过

1)安装jdk(jdk1.8.0_172),安装tomcat(8.5.31)。此为常规操作,忽略不讲

2) 官网下载 opengrok-1.1-rc27.tar.gz  解压缩到安装目录上(本人惯常的安装目录/usr/local/opengrok)

3)把source.war复制到tomcat的webapps目录中

cp /usr/local/opengrok/lib/source.war /usr/local/tomcat/webapps

mv source.war yourprojectname.war

4)登录tomcat所搭建的web网站的指定目录  http://127.0.0.1/yourprojectname/

 这时就会在tomcat的webapps中生成yourprojectname文件夹

 暂时忽略掉访问网站的报错,因为我们还没有生成configuration.xml的配置文件。

5)改造一下OpenGrok。vi  /usr/local/opengrok/bin/OpenGrok

===============================================================

Line 213,设置opengrok的安装目录,如下

OPENGROK_INSTANCE_BASE="${OPENGROK_INSTANCE_BASE:-/usr/local/opengrok}"

Line 655 ~658,添加tomcat的目录

for prefix in
 ${OPENGROK_TOMCAT_BASE}
 /var/lib/tomcat8
 /usr/local/tomcat

Line 236~240,注释掉else的内容

Line 245~249,注释掉else的内容

# REQUIRED: Source Code/Repository Root
# (your source code or the root of all repositories)
if [ -n "${OPENGROK_SRC_ROOT}" ]; then
SRC_ROOT="${OPENGROK_SRC_ROOT}"
#else
#SRC_ROOT="${OPENGROK_INSTANCE_BASE}/src"
fi

# REQUIRED: OpenGrok Generate Data Root
# (for Lucene index and hypertext cross-references)
# This area is rebuilt by "update" / "updateQuietly"
if [ -n "${OPENGROK_DATA_ROOT}" ]; then
DATA_ROOT="${OPENGROK_DATA_ROOT}"
#else
#DATA_ROOT="${OPENGROK_INSTANCE_BASE}/data"
fi

===============================================================

6)设置环境变量,这里我们用一个脚本来实现。需要注意的是红字部分,如果是多项目的时候,每次生成索引前,都要修改并source这个脚本。

#cat mysetenv.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
#-------------------------------------------------------------------------------
export JAVA_HOME=/usr/local/java/jdk1.8.0_172
export JRE_HOME=$JAVA_HOME/jre
export JAVA_BIN=$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

#-------------------------------------------------------------------------------
#   - 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=/usr/local/opengrok
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/yourproejctname
#  generated data root
export DATA_ROOT=$OPENGROK_INSTANCE_BASE/database/data/yourprojectname
#
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=/usr/local/tomcat
export OPENGROK_WAR_TARGET_TOMCAT=$OPENGROK_TOMCAT_BASE/webapps
export OPENGROK_WAR_TARGET=$OPENGROK_TOMCAT_BASE/webapps
export CATALINA_HOME=$OPENGROK_TOMCAT_BASE

7)将源代码放到指定的目录,即上面脚本中SRC_ROOT的所指定的目录。或者建立一个link

例如:先进入SRC_ROOT的所指定的目录中,然后

ln -s 源码所在目录 yourprojectname

8)生成索引

source mysetenv.sh

./OpenGrok index

9)生成的configuration.xml文件在etc目录下(/usr/local/opengrok/etc)

在此路径下,建一个yourprojectname的文件夹,将xml文件放到此文件夹下,然后修改tomcat里的web.xml文件。

vi /usr/local/tomcat/webapps/yourprojectname/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>/usr/local/opengrok/etc/yourprojectname/configuration.xml</param-value>
</context-param>

===============================================

10)重启tomcat,然后访问  http://127.0.0.1/yourprojectname/

 

***************************

****  配置多个项目  ****

***************************

配置多个项目有两种方法:

一种是从step1 开始重新操作一遍,只不过把yourprojectname换为相应project的名字即可。 

这种情况下,每一个连接,对应一个项目。例如:

http://127.0.0.1/project1/

http://127.0.0.1/project2/

另一种方法是,在SRC_ROOT目录中添加新的工程代码或者添加新的链接,然后step7做起。

这种情况下,一个链接对应所有的项目。例如

http://127.0.0.1/project/

Opengrok服务器搭建step by step第1张

免责声明:文章转载自《Opengrok服务器搭建step by step》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇bootstrap模态框手动关闭遮盖层不消失iframe高度自适应下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Java switch 枚举

Switch可以使用int.short、char、Enum和String其中,Enum是1.5之后的新特性,String是java8的新特性。所以正确的写作应该如下。...

解决微信公众平台接口配置信息配置失败问题

填写完URL和TOKEN后,当您单击“提交”时,系统将始终提示您“配置失败”或其他错误,以确认URL所指向的后台页面代码是否正常。请确认TOKEN配置是否正常。此时,请检查INDEX页面的编码格式,并将其更改为GB2312进行尝试,这可能会解决您的问题。我想把这篇文章献给我浮躁的自己。...

excel下划线转驼峰公式

最近,为了避免麻烦,我决定生成jquery的json对象结构。数据表。下划线应变成驼峰,如下所示:=LEFT&MID...

差分方程的零输入响应与零状态响应

差分方程的迭代分析方法有以下缺点:没有闭合解,不利于数学分析。某个时间的输出只能从头开始计算。本文介绍了差分方程的零输入响应和零状态响应分析方法。对于系统,这种分析方法可以很好地表达系统响应的物理意义=Y[-1]=0$Input Y[n]。回顾零输入响应和零状态响应的迭代计算,我们发现以下规则:$egin{align*}y[0]&=-&qqu...

前端导航站点(PC端)

本篇LIST1.项目预览地址:项目预览地址2.项目完成效果:3.HTML布局拆分1.tip提示部分2.title标题部分3.搜索栏部分找的是codepen上现成的搜索框样式,包含搜索框展开收缩的特效。...

转分享MAC office2016 安装及激活

请单击“系统首选项”中的“安全和隐私”,在上面的“常规”选项卡中找到“允许从以下位置下载的应用程序”,然后选择“AppStore和批准的开发人员”以安装dmg文件。打开它后,你会看到一个界面,上面有一个通常为灰色的黑色锁定标志。单击黑色锁将其激活。在激活过程中,如果需要输入系统密码,只需在登录操作系统时输入密码即可。...