lucene-jaのサンプル動作

http://tidus.ultimania.org/wiki/index.php?Lucene

①Senのインストール
https://sen.dev.java.net/servlets/ProjectDocumentList?folderID=755&expandFolder=755&folderID=0

からインストールし、eclipseにインポート。

sen-1.2.2.1/dic/build.xmlが辞書作成バッチの模様です。

windows用にperlのパスを一部変更

これがコメントアウトされているので

自分の環境用に変数を設定して、コメントアウトをはずす。
逆にlinux環境用の設定はコメントアウト

buildを実行したがプロキシ環境のため辞書をDLできなかった。
ログに出力されていたURLから手動でDLし、/dic直下に配置した。

⇒そのためdownloadタスクはコメントアウト

build成功!

lucene-jaインストール
https://sen.dev.java.net/servlets/ProjectDocumentList?folderID=755&expandFolder=755&folderID=0

から、lucene-ja-2.0test2.zipをDL。

index生成方法は lucene-ja/webapp/index.jspに書いてある。

③index生成
lucene-ja/bin の下にあるmkhtmlindex.batに以下の設定を追加

SET SEN_HOME=C:\〜\sen-1.2.2.1
SET LUCENE_HOME=C:\〜\lucene-ja

CMD_LINE_ARGSでインデクスを作成するフォルダを指定する(batの引数で指定も出来る)

SET CMD_LINE_ARGS=-index C:\〜\index

とか。
JAVA_HOMEがC:\Program Files\Java\jdk1.6.0_10だったので、
%JAVA_HOME%\bin\java の部分を "%JAVA_HOME%"\bin\java に修正した。

batを実行してindex作成完了。

mkhtmlindex.bat 
  • index オプションで指定したフォルダにインデックスが作成される。

④検索
lucene-ja/bin/search.bat にSEN_HOME、LUCENE_HOMEを設定してあげる。
CMD_LINE_ARGSにはindexのフォルダを指定。

search.bat を実行してクエリを入れると検索できます。

・・・日本語がヒットしねぇw

[追記]
ヒットしないなーと思っていたら、htmlのインデクサはCJKAnalyzerクラスを使ってた。
senを使うJapaneseAnalyzerクラスは、mktextindex.batの方で動作確認できる。
こちらはかなりいい感じにヒットします。
さすがJapaneseAnalyzer。いいぞJapaneseAnalyzer。