背景
Adnroid系统代码很庞大,查看费劲,Source Insight 和Android Studio导入源码,都不是很好用,OpenGrok支持代码搜索和跳转,也支持查找文件,因此,为了方便日常开发,搭建OpenGrok很有必要,下面将介绍详细的搭建步骤
OpenGrok环境搭建
一、下载工具
1、tomcat下载
tomcat版本 :apache-tomcat-9.0.64.tar.gz
下载地址:https://tomcat.apache.org/download-90.cgi
将其存放至/opt目录下
2、opengrok下载
opengrok版本:opengrok-1.3.16.tar.gz
下载地址:https://github.com/oracle/opengrok/releases/tag/1.3.16
将其存放至/opt目录下
二、jdk安装
sudo apt-get install openjdk-8-jdk
讯享网
三、安装universal-ctags
已下载的安装包:https://download.csdn.net/download/banzhuantuqiang/
也可从github上下载:
下载地址:git clone https://github.com/universal-ctags/ctags.git
1、移除exuberant-ctags
讯享网sudo apt-get remove --purge exuberant-ctags
2、编译安装universal-ctags
tar -zxvf ctags.tar.gz cd ctags/ ./autogen.sh ./configure make sudo make install
3、查看 安装位置,后面构建索引需要用到
讯享网whereis ctags 结果: ctags: /usr/local/bin/ctags
4、查看ctags版本
ctags --version 结果: Universal Ctags 6.0.0, Copyright (C) 2015-2022 Universal Ctags Team Universal Ctags is derived from Exuberant Ctags. Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert Compiled: Aug 26 2023, 06:24:56 URL: https://ctags.io/ Output version: 0.0 Optional compiled features: +wildcards, +regex, +gnulib_regex, +iconv, +option-directory, +packcc, +optscript
四、安装Tomcat
1、解压并重命名
讯享网cd /opt tar -zxf apache-tomcat-9.0.64.tar.gz rm apache-tomcat-9.0.64.tar.gz mv apache-tomcat-9.0.64/ tomcat
2、启动服务器
cd /opt/tomcat/bin/ ./startup.sh# 同网络下浏览器输入主机IP,若成功打开网页则服务器安装成功 例如:http://192.168.21.225:8080/
3、关闭服务器
讯享网cd /opt/tomcat/bin/ ./shutdown.sh
五、安装OpenGrok
解压安装 cd /opt tar -zxf opengrok-1.3.16.tar.gz rm opengrok-1.3.16.tar.gz mv opengrok-1.3.16/ opengrok
六、Tomcat与OpenGrok关联及配置
1、查看webapps目录
讯享网ls -l /opt/tomcat/webapps 可以看到目录下并没有source目录
2、source.war文件复制
将opengrok的lib目录下的source.war文件,复制到tomcat的webapp目录下 cp /opt/opengrok/lib/source.war /opt/tomcat/webapps/
3、重启tomcat服务器
讯享网执行下面的操作后,此时系统会自动在webapp目录下生成一个source目录 cd /opt/tomcat/bin/ ./startup.sh ./shutdown.sh
4、再次查看webapps目录
ls -l /opt/tomcat/webapps 可以看到目录下生成了source目录
5、删除source.war文件
6、在opengrok目录下创建相应的目录
讯享网mkdir -p /opt/opengrok/source # 该目录直接关联到源代码 mkdir -p /opt/opengrok/data # 该目录存放源代码索引文件 mkdir -p /opt/opengrok/etc # 该目录存放后期代码同步的必须文件
7、配置环境变量
vim /etc/profile # 添加如下变量 export OPENGROK_TOMCAT_BASE=/opt/tomcat export CATALINA_HOME=/opt/tomcat export OPENGROK_APP_SERVER=Tomcat export OPENGROK_INSTANCE_BASE=/opt/opengrok 注:如果多个地方装了tomcat,该环境变量将决定用哪个
8、更新环境变量
讯享网source /etc/profile
9、建立源码仓库,并放入相关代码(此目录根据实际情况建立)
10、软链接关联相关代码
根据自己opengrok位置和源码位置链接,这里的source和步骤6建的要对应上 cd /opt/opengrok/source ln -s /data01/Qualcomm/865/android10/Qualcomm865_vir Qualcomm865_vir 注:如果多套代码,就建立多个映射,建议代码用映射的方法
11、生成索引文件和configuration.xml文件
讯享网索引文件路径:/opt/opengrok/data/index configuration.xml文件路径:/opt/opengrok/data/xref 命令如下: sudo java -Xmx10g -jar /opt/opengrok/lib/opengrok.jar -c /usr/local/bin/ctags -P -S -v -s /opt/opengrok/source -d /opt/opengrok/data -i d:.git -i d:.repo -i d:out -i *.js -i *.jar -i *.zip -i *.db -i *.apk -i *.tar -i *.tar.bz2 -i *.json -i *.gz -W /opt/opengrok/etc/configuration.xml -m 512 注意:这里根据代码量决定需要多长时间,代码量大,就比较耗时,一般配置Java最大堆内存为8g,防止内存溢出,如果不配置,内存溢出会中断构建索引 注:这里要把各个参数都设置好,看好每个参数的函数所对应的文件: -Xmx8g:配置Java最大堆内存为8g,防止内存溢出。 -jar:指定opengrok.jar:指定opengrok.jar包.(这里不改) -c :指定universal-ctags的路径,这里我们之前获得过ctags的路径。 -d :指定文件存放路径,在上面的路径下新建data文件夹 -w :指定configuration.xml的路径 -m :指定opengrok索引时的缓存大小,默认只有16M -i : 后面表示忽略文件夹或者某种格式的文件
12、关联configuration.xml文件
将/var/opengrok/etc/configuration.xml路径替换为上一步新生成的/opt/opengrok/etc/configuration.xml vim /opt/tomcat/webapps/source/WEB-INF/web.xml

13、启动tomcat服务器
讯享网cd /opt/tomcat/bin/ ./startup.sh ./shutdown.sh ./startup.sh
14、功能验证
浏览器内输入192.168.21.225:8080/source便可使用opengrok搜索代码 注:默认是8080端口,可在tomcat/conf/server.xml修改默认端口
注:如果构建索引失败,将opengrok/data目录删除,-Xmx值和-m 值设置大一些

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/33731.html