搜素了一下opengrok的配置,都是使用老版本的例子,本人有使用最新版本的洁癖,因此尝试了一下,记录如下:
1. 下载并编译universal-ctags
如果没有安装git, autoconf,先安装
sudo apt install git autoconf
下载universal-ctags
git clone https://github.com/universal-ctags/ctags.git
我直接下载到了/home/huwang/Download下。
编译universal-ctags
注意:/home/huwang是我存放的目录,根据你的下载位置,自行修改。
cd /home/huwang/Download/ctags./autogen.sh./configuremake
编译完成后,尝试运行如下命令,
cd /home/huwang/Downloads/ctagsls ctags./ctags --version
运行成功,完成长征第一步。
2. 安装java 8
sudo apt install openjdk-8-jdk
3. 下载android源代码
此处请参考其他android源码下载文章。这里我是copy的原来的备份,放到了/home/platform目录下。
4. 下载Tomcat
从http://apache.mirrors.hoobly.com/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.tar.gz下载tomcat,并用下面命令解压
cd /home/huwang/Downloadstar xvf tar xvf apache-tomcat-8.5.37.tar.gz
运行下面命令,检查tomcat是否正常运行
cd /home/huwang/Downloads/apache-tomcat-8.5.37/bin./startup.sh
在浏览器中输入http://127.0.0.1:8080, 如果看到了Tom猫,恭喜你,配置正确啦
5. 下载opengrok-1.1.2
通过下面的链接,下载opengrok https://github.com/oracle/opengrok/releases/download/1.1.2/opengrok-1.1.2.tar.gz (刚刚发现,2天前,更新到了1.2了,等会试用一下1.2)。
cd /home/huwang/Downloadstar xvf opengrok-1.1.2.tar.gz
下面创建数据、配置、代码目录
cd /home/huwang/Downloads/opengrok-1.1.2mkdir etc data src#下面创建Android源码的软链接cd /home/huwang/Downloads/opengrok-1.1.2/srcln -s /home/platform platform
运行下面的命令,可以查看命令行选项,以便创建索引
java -Djava.util.logging.config.file=/home/huwang/Downloads/opengrok-1.1.2/doc/logging.properties -jar /home/huwang/Downloads/opengrok-1.1.2/lib/opengrok.jar
6. 为android源码建立索引
试用下面的命令,建立索引。时间比较长,大概半小时。你能看到你机器的风扇在拼命。
为了方便,我把aidl文件和hal文件也作为源码放入。
java -Djava.util.logging.config.file=/home/huwang/Downloads/opengrok-1.1.2/doc/logging.properties -jar /home/huwang/Downloads/opengrok-1.1.2/lib/opengrok.jar -s /home/huwang/Downloads/opengrok-1.1.2/src -I *.java -I *.cpp -I *.h -I *.c -I *.hpp -I *.aidl -I *.hal -W /home/huwang/Downloads/opengrok-1.1.2/etc/configuration.xml -U http://localhost:8080/source -d /home/huwang/Downloads/opengrok-1.1.2/data -c /home/huwang/Downloads/ctags/ctags -m 1024 -H -P -S -G
7. Copy source.war到Tomcat并修改配置
cp /home/huwang/Downloads/opengrok-1.1.2/lib/source.war /home/huwang/Downloads/apache-tomcat-8.5.37/webapps/
再修改 /home/huwang/Downloads/apache-tomcat-8.5.37/webapps/source/WEB-INF/web.xml,让配置文件指向/home/huwang/Downloads/opengrok-1.1.2/etc/configuration.xml
修改后,发现机器风扇又一顿转,完成后就可以访问源码了。
8. 访问并使用
9. 特别说明:我的机器是32G的内存,CPU是i7 8700,没有碰到内存溢出的情况。如有如此情况,请考虑在命令行增加
-J=-Xmx8g
10.参考文档:https://github.com/oracle/opengrok/wiki/How-to-setup-OpenGrok