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 にインデックス作成のスクリプトを置いておしまい。
コメントを残す