OpenGrok は Sun 謹製のクロスリファレンスツール。
対応している言語は
- C/C++
- Shell Scripts (like ksh, sh)
- Perl
- Java, Java Class files, JAR files
- ELF files
- troff man pages
- Zip, Gzip, BZip2, Tar
- meta language files (like XML, SGML or HTML)
これ以外のファイルでもリファレンスが正しくできないだけで、 全く表示されないということはない。
また、主要なSCM に対応している。
- CVS
- Git
- Subversion
- 他にも沢山
ちょっと使ってみただけだけど lxr と比べて、対応している SCM が多かったりと 高機能な割に導入が簡単で見た目もよい。 あとは Python と Ruby に対応してくれれば... まあ自分で作ればいいか。
以下、opengrok をインストールしたときのメモ。OS は debian-lenny。
sun-java6-jdk, tomcat5.5, tomcat5.5-admin, tomcat5.5-webapps, exuberant-ctags あたりをインストール。
opengrok-0.8.1.tar.gz をダウンロードして、適当に展開。 このディレクトリを ~/opengrok-0.8.1 としておきます。
source.war の deploy:
cd ~/opengrok-0.8.1 sudo ./OpenGrok deploy
/etc/tomcat5.5/policy.d/04webapps.policy でパーミッションを追加:
grant codeBase "file:${catalina.home}/webapps/source/-" { permission java.security.AllPermission; }; grant codeBase "file:${catalina.home}/webapps/source/WEB-INF/lib/-" { permission java.security.AllPermission; };
次。クロスリファレンスしたいソースコードを用意。 このディレクトリを ~/src としておきます。
インデックスを作成:
java -server -Xmx1024m -s ~/src -d ~/ogk-data -W configuration.xml -v sudo cp configuration.xml /var/opengrok/etc/configuration.xml
あとは tomcat を再起動すれば http://<your-site-url>:port/source/ で表示されるはず。
0 件のコメント:
コメントを投稿