参考link:Opengrok环境搭建--阅读Android源码
sudo apt-get install tomcat8
sudo /etc/init.d/tomcat8 restart //重启tomcat8
浏览器中打开http://localhost:8080/,出现下图说明tomcat8没问题。
//控制服务
sudo /etc/init.d/tomcat8 start
sudo /etc/init.d/tomcat8 stop
sudo /etc/init.d/tomcat8 restart
github地址:https://github.com/universal-ctags/ctags
下载完成后,进入ctags文件夹,依次执行以下命令,完成编译和安装:
sudo apt install autoconf
cd /tmp
git clone https://github.com/universal-ctags/ctags //下载zip解压出来的autogen.sh之类文件的权限不对,建议这种方式,也可以把所有文件设置为777试下
cd ctags
./autogen.sh
./configure --prefix=/opt/software/universal-ctags # 我的安装路径。就使用这个,后面索引就是这个路径
make -j8
sudo make install
下载地址:https://github.com/oracle/opengrok/releases //我使用的是opengrok-1.2.23.tar.gz,使用tar -zxvf opengrok-1.2.23.tar.gz -C ~ 解压(-C解压到指定目录)
我这里解压在这个目录 cd ~/software/opengrok/opengrok-1.2.23(~/software)
cd ~/software/opengrok/opengrok-1.2.23
mkdir src data etc //src 源码路径 // etc 配置 //data 索引
b. 指定android源码位置
原本需要把源码放到src下,因为我的android源代码放在了~/software/src/,没必要把它整个移动到src下,所以在src下建了个enginner的软连接指向它:
cd ~/software/opengrok/opengrok-1.2.23/src
ln -s ~/software/src/ enginner (~/software/src/ : 需要链接的源码路径 enginner : src下的链接 )
ubuntu@ubuntu:~/software/opengrok/opengrok-1.2.23/src$ ll
总用量 8
drwxrwxr-x 2 ubuntu ubuntu 4096 7月 3 14:34 ./
drwxrwxr-x 10 ubuntu ubuntu 4096 7月 3 14:54 ../
lrwxrwxrwx 1 ubuntu ubuntu 28 7月 3 14:34 enginner -> ~/software/src//
复制source.war到tomcat中:(不用解压,会自动解压)
cp ~/software/opengrok/opengrok-1.2.23/lib/source.war /var/lib/tomcat8/webapps/
ubuntu@ubuntu:~/software/opengrok/opengrok-1.2.23$ sudo cp -rf source.war /var/lib/tomcat8/webapps/
d. 配置CONFIGURATION:
在/var/lib/tomcat8/webapps/source/WEB-INF/web.xml中修改configuration.xml的路径,
$ gedit /var/lib/tomcat8/webapps/source/WEB-INF/web.xml
Full path to the configuration file where OpenGrok can read its configuration
CONFIGURATION
~/software/opengrok/opengrok-1.2.23/etc/configuration.xml //自己创建的etc路径
e. 重启Tomcat,在浏览器中输入 http://IP地址:8080/source,已经可以看到Opengrok的雏形,不过会有一个错误,是因为还未建立索引,所以configuration.xml还没生成,先不用关注:
http://10.100.xxx.xxx:8080/source
http://localhost:8080/source/
//提示信息如下
CONFIGURATION parameter has not been configured in web.xml! Please configure your webapp.
Unable to determine source root path. Missing configuration?
//使用此命令来创建索引,具体文件键附件openGrok.sh
java -Xmx8g -jar ~/software/opengrok/opengrok-1.2.23/lib/opengrok.jar \
-c /opt/software/universal-ctags/bin/ctags \
-s ~/software/src \
-d ~/software/opengrok/opengrok-1.2.23/data -H -P -S -G -v \
-W ~/software/opengrok/opengrok-1.2.23/etc/configuration.xml \
-U http://localhost:8080/source \
-m 256
#-Xmx8g:配置Java 最大堆内存为8g,防止内存溢出。
#-jar:指定opengrok.jar包。
#-c:指定universal-ctags的路径,configure配置的路径,此时使用which ctags得到的路径是/usr/bin/ctags,是会报错的
#-s:指定源码路径,就是上面的新建的src。
#-d:指定索引文件存放路径,就是上面新建的data。
#-W:指定configuration.xml的路径,就是上面新建的etc。
#-m:指定opengrok索引时的缓存大小,默认只有16M。
把如上命令写入openGrok.sh,使用./openGrok.sh运行就可以