elasticsearchのライセンス変更問題でのFessの対応を始めています。elasticsearch 7.10.2をフォークして、Fess用の検索エンジンとして、Fesen (フェセン: Fess Search Engine)というのを作っています。
とりあえず、現時点ではビルドして、zipパッケージを作ると起動することができるようになりました。elasticsearchの本流は、Gradleを使っていますが、私が気持ちよくメンテできるようにしていくためにはMavenである必要があるため、Maven化しました。なので、必要なソースコードは持ってきている感じですが、ビルドの仕方は全く異なります。あとは、org.elasticsearchのパッケージですが、そこもorg.codelibs.fesenに変わります。起動するコマンドも./bin/fesenになりました。ほかには、Fess観点だとKibanaとか不要なので、いらないモジュールは外しておこうかなと思っています。
結構、ハマったのが、元のテストコードたちが循環参照している感じになっているので、そのままMavenに持ってきてマルチモジュールにするとテストを実行することができず…。その辺はプロファイルを設定して、コンパイルとテストが別々になるようにして、対応しました。ただ、一部、JarHellがどうしようもないのもあるので、そのテストなどはスキップしたりしましたが…。
あとは、rpmとdebのパッケージを作るようにすれば、一段落なので、ゴールはあと少しだと思います。Fess 13.11からはFesenがデフォルトになるように(たぶん、順調に)進行中です。