OpenGrokのインストール

OpenGrokのインストールをします。目的は,Lhazソースコードのブラウジングです。シンボルや関数の定義位置にクリックひとつでジャンプできたり,参照箇所をサーチできたり,たいへん便利です。ソースコードを眺めていると,ムラムラとリファクタリングしたくなってきます。

必要な物件をインストールします。

$ sudo apt-get install openjdk-7-jdk
$ sudo apt-get install ant
$ sudo apt-get install jflex
$ sudo apt-get install ctags
$ sudo apt-get install tomcat7

OpenGrok本体をビルドします。

$ wget http://java.net/projects/opengrok/downloads/download/opengrok-0.11.1-src.tar.gz
$ tar zxf opengrok-0.11.1-src.tar.gz
$ cd opengrok-0.11.1-src/lib
$ ln -snf /usr/share/java/JFlex-1.4.3.jar JFlex.jar
$ cd ..
$ vi OpenGrok

FindJavaHome() で /usr/lib/jvm/java-7-openjdk-amd64 を検索するようにします。

$ ant

...(略)...
BUILD SUCCESSFUL
Total time: 3 seconds

deployします。

$ vi OpenGrok

FindApplicationServerType() と DetermineWarDirectoryTomcat() で, /var/lib/tomcat7/webapps を見に行くようにします。

$ sudo ./OpenGrok deploy

tomca7を再起動します。

$ sudo ./etc/init.d/tomcat7 restart

動作確認します。

$ curl localhost:8080/source/

< ?xml version="1.0" encoding="UTF-8"?>
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
...(略)...

リバースプロキシとつなぎます。

$ sudo vi /etc/apache2/sites-available/my_site

(追加分のみ)
<VirtualHost *:80>
        ServerName source.chitora.com

        ProxyRequests Off
        ProxyVia Off
        ProxyPreserveHost On

        <Proxy *>
                Order deny,allow
                Allow from all
        </Proxy>

        ProxyPass / http://127.0.0.1:8080/
</VirtualHost>

$ sudo /etc/init.d/apache2 restart

閲覧用のソースを準備します。

$ sudo mkdir -p /var/opengrok/src/Lhaz
$ cd /var/opengrok/src/Lhaz
$ sudo git clone ssh://chitora@127.0.0.1:29418/lhaz.git
(以下ごにょごにょclone)

/etc/cron.daily にインデックス作成のスクリプトを置いておしまい。

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です