opengrok搭建Android代码搜索环境

wuchangjian2021-11-14 17:18:45编程学习

        早年曾经搭建过,最近研究android12,代码比较新,网上没有找到现成的搜索环境,干脆搭一个,没想到搭建过程挺费周折,特此纪录。

        1. 不要用太新的opengrok,用了1.7.xx版本,结果报org.apache.lucene.codecs.lucene87错误,用回1.5.10版本就没问题

        2. 要用univasal ctag版本,建议自己编译一个,几分钟的事

        3. 先用一个小点的工程全流程跑一遍,确认没有问题,再搭建android工程,毕竟需要花费十几个小时

以下是详细步骤

1.下载opengrok,解压

https://github.com/oracle/opengrok/releases/download/1.5.10/opengrok-1.5.10.tar.gz

2. 下载ctags,编译,具体参考github说明,写的很详细了

https://github.com/universal-ctags/ctags

3. 安装tomcat,前提是安装好jvm

实际测试ubuntu直接用apt install,或者用下载压缩包解压的方式均可行

这一步结束后,确保打开http://localhost:8080可以看到tomcat的欢迎页

4. 拷贝source.war

cp opengrok-1.5.10/lib/source.war /var/lib/tomcat9/webapps/aosp.war

aosp.war名字随意起,最终影响打开的网页地址

这一步结束后,确保打开http://localhost:8080/aosp后,显示一个错误页,说源代码路径找不到之类的

5. 用如下命令建立索引,嫌麻烦可以用写好的脚本,》》》》下载

java $JAVA_OPTS -jar /mnt/sdb/code/opengrok-1.5.10/lib/opengrok.jar -H -P -S -G -v \
 -c /usr/local/bin/ctags \
 -s ${source_root} \
 -d ${indexing_root} \
 -U http://localhost:8080/aosp \
 -W ${indexing_root}/configuration.xml \
 -m 256

其中source_root是源代码路径,可以用软链接的方式把不同的源代码链接到此目录,搜索的时候可以按目录搜索不同的源代码

indexing_root是索引文件的路径,产生的文件会十分庞大,自己找个地方放

6. 修改代码路径

vim /var/lib/tomcat9/webapps/aosp/WEB-INF/web.xml

把如下章节中的configuration.xml路径改成,建立索引目录下的configuration.xml路径

修改前:
<param-name>CONFIGURATION</param-name>
<param-value>/etc/opengrok/configuration.xml</param-value>

修改后
<param-name>CONFIGURATION</param-name>
<param-value>/mnt/sdb/code/opengrok_data/configuration.xml</param-value>

大功告成:

 

相关文章

湖南18个高铁站发送、到达总人数破2000万,超2019年同期

湖南18个高铁站发送、到达总人数破2000万,超2019年同期

2022-08-12 21:22:47 暑运大幕开启至今已有43天,8...

C语言从入门到入土(入门篇)(函数p2)

//续前节 目录 5. 函数的嵌套调用和链式访问 5.1 嵌套调用 5.2 链式...

长沙10月1日起实施职工医保门诊共济保障制度

2022-08-08 17:32:47 日前,长沙市人民政府办公厅关于...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。