本地部署OpenGrok
- 一、Windows11部署OpenGrok
- 1.1 准备要求
- 1.2 安装配置OpenGrok环境
- 1.3 部署OpenGrok
- 1.4 运行OpenGrok
- 1.5 部署多项目源码
- 1.6 常见问题
- 二、Ubuntu24部署OpenGrok
- 2.1 准备要求
- 2.2 安装配置OpenGrok环境
- 2.3 部署OpenGrok
- 2.4 运行OpenGrok
- 2.5 部署多项目源码
- 2.6 常见问题
- 三、FnOS部署OpenGrok
- 3.1 准备要求
- 3.2 安装说明
一、Windows11部署OpenGrok
1.1 准备要求
OpenGrok官方指导文档:https://github.com/oracle/opengrok/wiki/How-to-setup-OpenGrok
配置要求:
java:OpenJDK21U-jdk_x64_windows_hotspot_21.0.9_10.msi
opengrok:opengrok-1.14.4.tar.gz
ctag:ctags-p6.2.20251130.0-x64.zip
tomcat:apache-tomcat-10.1.49-windows-x64.zip
注意:按照指定版本安装会少走能多弯路,链接地址也一并附上,直戳下载。
官 网 要 求:
Java from 17 to 21
OpenGrok 最新版本
Tomcat 要求10.x
1.2 安装配置OpenGrok环境
这里要依次安装java、tomcat、ctags、opengrok软件并配置环境变量。
1.2.1 安装Java 21
(1)安装完JDK后,新增系统变量JAVA_HOME,在Path系统变量中,添加:%JAVA_HOME%\bin
(2)查看Java版本:java --version。这里如下显示即正常。
1.2.2安装Tomcat
(1) 确认Tomcat是否和Java版本适配。当前OpenGrok要求10.x,JDK 21是满足要求的。
(2)将下载的Tomcat压缩包解压后,新增系统变量CATALINA_HOME,在Path系统变量中,添加:“%CATALINA_HOME%”
(3)查看Tomcat是否可以正常运行。
在tomcat安装目录的bin文件夹中,双击运行startup.bat脚本启动Tomcat,在浏览器中打开http://localhost:8080/,浏览器如下显示即正常。
1.2.3 安装Ctags
(1)将下载的ctags.exe压缩包解压后,同样配置ctags的环境变量,此处省略。
(2)查看ctags版本:ctages --version。这里如下显示即正常。
1.2.4 安装OpenGrok
(1)下载最新版本的OpenGrok,https://github.com/OpenGrok/OpenGrok/releases ,解压即安装。
(2)在OpenGrok目录下,新建4个空文件夹(data、source、etc、log)。
data用于放置opengrok生成的索引数据
source用于放需要浏览的源码
etc用于放configuration.xml文件
1.3 部署OpenGrok
1、将源码拷贝到source文件中。这里建议按照软连接的方式,在src目录中只放置源码的软连接即可。
2、创建源码索引。
OpenGrok生成索引主要有两种方式:使用OpenGrok可执行文件或直接使用Java jar包运行。以下是详细的命令说明:
一、基本命令格式
- 使用OpenGrok可执行文件
cd /path/to/opengrok/bin
./OpenGrok index [源码路径]
这是最简单的索引创建方式,OpenGrok会自动处理配置和索引生成。 - 使用Java jar包(更灵活)
java -jar /path/to/opengrok.jar [选项] [子目录…]
这种方式提供了更多配置选项,适合复杂场景。
二、常用参数详解
| 参数 | 说明 | 示例 |
|---|---|---|
| -P | 为source root目录下的每个一级子目录生成一个独立工程 | -P |
| -S | 搜索并添加外部源码仓库"external" source repositories | -S |
| -v | 打印操作的进度信息(verbose模式) | -v |
| -s | 指定source root目录(源码存放路径) | -s /path/to/source |
| -d | 指定data root目录(索引数据存放路径) | -d /path/to/data |
| -W | 指定配置文件写入路径(配置文件路径) | -W /path/to/configuration.xml |
| -I | 包含的文件类型 | -I “.java" -I ".c” -I “.cpp" -I ".h” |
| -i | 忽略的文件类型 | -i “.o" -i ".so” -i “*.a” |
| -i | 忽略的目录 | -i d:.git -i d:.svn -i d:.hg |
首先,需要运行Tomcat服务器,第一次因为缺少configuration.xml,报错是正常的。
然后,执行如下命令让索引器生成配置文件,会自动通知web应用更新索引。
在CMD命令窗口执行如下命令:
java-Djava.util.logging.config.file="D:\Win11_Programs\develop\opengrok\etc\logging.properties"^-jar"D:\Win11_Programs\develop\opengrok\lib\opengrok.jar"^-W"D:\Win11_Programs\develop\opengrok\data\configuration.xml"^-c"D:\Win11_Programs\develop\ctags-p6.2.20251130.0-x64\ctags.exe"^-P-S-v-s"D:\Win11_Programs\develop\opengrok\source"^-d"D:\Win11_Programs\develop\opengrok\data"^-U"http://localhost:8080/source"或者使用opengrok-indexer索引器。
3、将opengrok安装目录\lib\source.war文件,复制到tomcat安装目录\webapps\目录下,重新运行tomcat后,会将source.war文件自动解压出一个同名的新目录中。
4、打开tomcat安装目录\webapps\source\WEB-INF\web.xml文件,找到"CONFIGURATION",修改为索引器生成的configuration.xml文件的绝对路径。
1.4 运行OpenGrok
使用Tomcat的安装目录中的startup.bat脚本,启动Tomcat服务器可以启动OpenGrok。下面提供了快捷启动脚本,简单修改后即可。
快速启动脚本
@echo off tasklist|findstr /C:"java"/C:"tomcat">nuliferrorlevel1(echoTomcat is not running.echoStart tomcat service. ::这里替换成自己的startup.bat启动脚本路径 call D:\Win11_Programs\develop\apache-tomcat-10.1.49\bin\startup.bat)else(echoTomcat is running.echoStop tomcat service. ::这里替换成自己的startup.bat启动脚本路径 call D:\Win11_Programs\develop\apache-tomcat-10.1.49\bin\shutdown.bat)timeout/t3/nobreak </