1. 安装JDK
- JDK jdk-8u251-linux-x64.rpm下载安装:https://www.oracle.com/java/technologies/javase-jdk8-downloads.html或者使用命令:sudo apt-get install oracle-java8-installer
- 配置环境变量:
用命令打开bashrc文件,在文件的后面添加以下代码
命令: gedit ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
2. 安装 tomcat
- 从https://tomcat.apache.org/download-10.cgi 下载下载tomcat9.0版至/opt/yaozhongxiao/apache-tomcat-9.0.10.tar.gz
- 解压至/opt/yaozhongxiao/apache-tomcat-9.0.10
- 运行startup.sh,就可以在8080端口看到运行的tomcat的页面:
3. 安装 Universal Ctags
- 不要再使用 Exuberant ctags,新版本的Opengrok支持度不好,所以先卸载掉:
sudo apt-get remove --purge exuberant-ctag
- 下载universal-ctags源码和编译
命令下载源码:git clone https://github.com/universal-ctags/ctags.git
编译:
进入ctags文件夹,编译和安装:
./autogen.sh
./configure
make
sudo make install
- 安装完成后可以用下面的命令查询:
~$ ctags --version
Universal Ctags 0.0.0, Copyright (C) 2015 Universal Ctags Team
Universal Ctags is derived from Exuberant Ctags.
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
查询安装的路径:
~$ which ctags
/usr/local/bin/ctags
4. 安装 opengrok.
- 下载路径:OpenGrok Releases,下载
tar.gz
压缩包。 -
tar zxvf opengrok.tar.gz -C ~
- 为了号管理,创建文件。
-
cd ~/opengrok/ mkdir src data etc # src:源代码目录 # data:存放opengrok索引文件目录 # etc:放置configuration.xml的目录,xml文件由opengrok生成,我们只需要配置路径 # dist: 放置opengrok的解压文件
-
复制source.war到tomcat中:(不用解压,会自动解压)
cp ~/opengrok/lib/source.war tomcat/webapps/
-
配置CONFIGURATION:
在web.xml中修改configuration.xml的路径,vi /opt/tomcat8.5/webapps/source/WEB-INF/web.xml
<param-name>CONFIGURATION</param-name>
<param-value>~/opengrok-1.2.2/etc/configuration.xml</param-value>
5 . 建立索引
java -Xmx8g \
-jar opengrok/dist/lib/opengrok.jar \
-P -S -v -s opengrok/src/test \
-d opengrok/data -I *.java -I *.xml -I *.mk -I *.txt \
-W opengrok/etc/configuration.xml \
-c /usr/local/bin/ctags \
-m 256
-Xmx8g:配置Java 最大堆内存为8g,防止内存溢出。
-jar:指定opengrok.jar包。
-c:指定universal-ctags的路径,可以使用which ctags确认具体路径。
-s:指定源码路径,就是上面的新建的src。
-d:指定索引文件存放路径,就是上面新建的data。
-W:指定configuration.xml的路径,就是上面新建的etc。
-m:指定opengrok索引时的缓存大小,默认只有16M。
重启Tomcat
bash apache-tomcat/bin/shutdown.sh
bash apache-tomcat/bin/startup.sh
浏览器中输入:http://localhost:8080/source/