使用OpenGrok阅读源码

0 前言

打算本周再写一篇关于Android的文章, 却忘了带工做电脑的充电器。上周主要从事了安卓源码的阅读工做,那么今天就来分享下Android源码的阅读总结。不要天真的觉得这是篇介绍安卓源码的文章,毕竟一周的时间不足以产生更多的心得体会,而是介绍一种阅读源码的利器——OpenGrok。工欲善其事必先利其器!!!java

其实在开发过程当中,一般遇到一些阅读源码的工做。只不过因为代码量少的缘由,使用 IDE,如:AndroidStudio,和VSCode等文本编辑工具。但因为 AOSP (Android Open Source Project)的代码体系巨大,使用上述工具显得力不从心,那么请使用OpenGroklinux

1 准备工做

1.1 Java 环境

这是每一个使用Java语言开发者必须安装的开发环境,若是你是c/c++等其余语言的开发者,请参阅安装Java环境c++

1.2 Tomcat 服务

Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器。git

下载地址:github

  1. windows/mac/linux 通用 apache-tomcat-9.0.14.zipweb

  2. windows 64 专用 apache-tomcat-9.0.14-windows-x64.zipapache

下载后解压在本地便可。windows

tomcatbin目录中找到startup.bat( windows )或startup.sh(mac/linux)文件,双击启动tomcat服务。浏览器

1.3 Universal Ctags

开源地址及安装教程见:github.com/universal-c…tomcat

Windows 系统选择下面的版本下载成功后解压到本地,并将解压后的路径添加至path环境变量。

  1. ctags-2019-01-18_5a2b65f8-x64.zip

  2. ctags-2019-01-18_5a2b65f8-x86.zip

Mac 系统使用命令进程安装。

brew install --HEAD universal-ctags/universal-ctags/universal-ctags
复制代码

2 配置 Open Grok

2.1 下载

下载页面:github.com/oracle/open… ,最新版本opengrok-1.1.2.tar.gz

2.2 解压 source.war

下载成功后解压在本地,将lib目录下的source.war文件解压到tomcatwebapps目录下。

2.3 添加 data root

data root 用于放置生成的索引文件和配置信息文件configuration.xml,建议在OpenGrok目录下新建data文件夹。

2.4 添加 source root

OpenGrok目录下新建project文件夹做为 source rootOpenGrok认为source root目录下的每一个文件夹都是一个项目。能够根据此特性添加多个项目。

2.5 配置configuration.xml

  1. 生成 configuration.xml
java -jar opengrok/lib/opengrok.jar -s opengork/project -d opengrok/data -W opengrok/data/configuration.xml
复制代码

命令中opengrok表示解压后的opengrok目录。

  1. 配置 configuration.xml

tomcat/webapps/source/WEB-INF/web.xml 修改CONFIGURATION变量,指向刚刚生成的configuration.xml文件路径。好比,楼主电脑的配置以下。

<display-name>OpenGrok</display-name>
<description>A wicked fast source browser</description>
<context-param>
    <description>Full path to the configuration file where OpenGrok can read its configuration</description>
    <param-name>CONFIGURATION</param-name>
    <param-value>D:\develop\opengrok-1.1.1\data\configuration.xml</param-value>
</context-param>
复制代码

2.6 启动OpenGrok

完成上述操做以后,在浏览器中输入 http://localhost:8080/source 浏览OpenGrok页面。

3 添加源码目录

因为本机没下载Android源码,在此使用OpenSSL源码演示。

OpenSSL地址:github.com/openssl/ope…

只需将须要阅读的原发放在OpenGroksource root目录下。

opengrok/project目录下执行下面的命令:

  1. windows
mklink /J openssl openssl目录
复制代码
  1. mac/linux
ln -s openssl目录 openssl
复制代码

再创建索引

java -jar opengrok/lib/opengrok.jar -P -S -v -s opengork/project -d opengrok/data -W opengrok/data/configuration.xml
复制代码

命令中opengrok表示解压后的opengrok目录。

重启tomcat服务,刷新页面 http://localhost:8080/source/

双击openssl,打开后的页面以下:

或者直接搜索某个文件:

在代码阅读页面,点击方法名和类名,亦会跳转搜索页面。

以为有用?那打赏一个呗。我要打赏

此处是广告Flueky的技术小站

相关文章
相关标签/搜索