32
32

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

OpenGrokでAndroidソースコード検索

Posted at

#OpenGrokでAndroidソースコード検索
Androidソースコード検索サービス
https://sites.google.com/site/devcollaboration/codesearch
これ便利ですよね。
好きなソースで検索したいですよね。
ということで、OpenGrok設置設定メモ。
誰かのページのコピペよせあつめでs。

#手順
##前提環境
VMWare, Ubuntu 12.04

##必要なソフトのインストール
sudo apt-get install ant exuberant-ctags tomcat6 tomcat6-admin jflex

##ソースのダウンロード
mkdir ~/og
cd ~/og
wget https://java.net/projects/opengrok/downloads/download/opengrok-0.11.1-src.tar.gz
wget http://jflex.de/jflex-1.4.3.tar.gz

tar xvzf jflex-1.4.3.tar.gz
tar xvzf opengrok-0.11.1-src.tar.gz
cp jflex-1.4.3/lib/JFlex.jar opengrok-0.11.1-src/lib/
cd ~/og/opengrok-0.11.1-src/

##設定ファイルの修正
$ ls /usr/lib/jvm
java-1.6.0-openjdk-amd64
java-6-openjdk-common
jdk1.6.0_45
java-6-openjdk-amd64
java-7-openjdk-amd64

上記にある適当なjavaを★に追加。
vi OpenGrok

    431                for dir in /usr/lib/jvm/sun-jdk-1.6 \
    432                           /usr/lib/jvm/sun-jre-1.6 \
    433                           /usr/lib/jvm/java-6-openjdk-amd64 \ ←★追加
    434                           /usr/lib/jvm/java-6-sun

メモリを増量 (./OpenGrok index,update時にメモリ不足になる場合)
vi OpenGrok

    261     # OPTIONAL: JVM Options
    262     JAVA_OPTS="${JAVA_OPTS:--Xmx6144m}" ←★2048から6144に書き換え

##OpenGrokのコンパイル
cd ~/og/opengrok-0.11.1-src/
ant

##tomcatにweb app設置
sudo ./OpenGrok deploy

##認証を追加したい場合(ここではお試しでBASIC認証を追加)
sudo vi /var/lib/tomcat6/webapps/source/WEB-INF/web.xml

###<web-app>直下に以下を追加

web.xml
<web-app>
...ここから追加
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>
        Authentication of BasicAuth
      </web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>basic</role-name>
    </auth-constraint>
  </security-constraint>

  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>UserDatabaseRealm</realm-name>
  </login-config>
ここまで追加...
</web-app>

###ユーザーの追加
sudo vi /etc/tomcat6/tomcat-users.xml

tomcat-users.xml
<tomcat-users>
  <role rolename="basic"/> ←★追加
  <user username="test" password="testpassword" roles="basic"/> ←★追加
</tomcat-users>

###tomcatの再起動
sudo /etc/init.d/tomcat6 restart

##検索したいデータの設置(ここではCyanogenMod)
mkdir -p ~/cm/cm-10.2
cd ~/cm/cm-10.2
repo init -u git://github.com/CyanogenMod/android.git -b cm-10.2
repo sync
mv .repo ../
sudo mv cm-10.2 /var/opengrok/src/
sudo chown root:root /var/opengrok/src/cm-10.2 -R ←これいらないかも

##初回のインデックシング
cd ~/og/opengrok-0.11.1-src/
sudo ./OpenGrok index

~完了するまでしばらく放置~

##2回目以降のインデックシング (新しいソースを置いた場合や、index処理でエラーで落ちた場合)
cd ~/og/opengrok-0.11.1-src/
sudo ./OpenGrok update

##できあがりの確認

vitrual machineのIPを指定して、ポート8080の/sourceにアクセス。
(VM内なら、http://localhost:8080/source/)

お試しで設定した認証がかかっているので、ID/PASSをいれる。
og_basic.png

キタワー*:.。.:・゚(n'∀')η゚・:.。.:*!!
og_cm10_2.png

##他のソースを追加する場合
/var/opengrok/src/
にソースを追加
cd ~/og/opengrok-0.11.1-src/
sudo ./OpenGrok update
をすると、topページのIn Project(s)に、「/var/opengrok/src/」に配置したフォルダ名で追加される。

32
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
32

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?