AndroidでORMLiteを使うときのeclipseまわりの環境

最近個人的にORMLiteをO/Rマッパーとして好んで使っているのですが、Android向けで使うときは、よくあるリフレクションを使う方法だとパフォーマンスが問題になることがあるから、あらかじめOrmLiteConfigUtilを使ってentityクラスのフィールド情報を書き出しといてね*1、ということになっているのでその通りにしていたりするのです。が。

eclipseを使って開発していると、いちいちentityを変更するために素javaを実行→androidを実行という流れが地味に面倒。

なので、eclipseプロジェクトのBuildersに書き出し部分も追加してやって自動化しようと思います。

以下の流れはhttp://dokumaru.wordpress.com/2011/08/28/android-ndk-get-start-2/を参考にしました。
また、ormliteのちゃんとしたセットアップはしていませんので(OrmLiteSqliteOpenHelperとか)、そちらは本家ドキュメントやらサンプルやらをご覧ください。


  • まずは普通にOrmLite環境をセットアップ

以下のような感じ。

  • Builderの追加。プロジェクトの[properties] -> [Builders] -> [New] -> [Program]と進む。
  1. Nameを適当に入力(今回の例ではORMLiteWriter)
  2. Locatoinは[Browse File System]からjavaのパスを選択
  3. Working Directoryは[Browse Workspace]からこのプロジェクトを選択 (${workspace_loc:/ORMLiteSample} みたいな感じになる)
  4. Argumentsに
-classpath bin\classes;libs\ormlite-core-4.27.jar;libs\ormlite-android-4.27.jar jp.funnything.ormlite.sample.ORMLiteConfigWriter

と入力 (jarのバージョンは調整して、最後はOrmConfigUtilの実行クラスのFQDN)

  • [Refreshタブ] -> [Refresh resources upon completion]をチェック -> [Specific resources]でres/rawディレクトリを選択。

  • [Build Optionsタブ] -> [During auto builds]をチェック -> [Specify working set...]でentityクラスが含まれるパッケージを選択

  • [OK] -> [OK]


以上で、entityの内容を変更したときのみORMLiteConfigWriterが走りres/rawの下にファイルが自動で生成されるようになると思います。


何が言いたいかって、さっさと公式のapt作って欲しい。(おい


[追記]
一応使用したプロジェクトを公開 https://github.com/funnything/ORMLiteSample