Friends - Maven
dbfluteとは直接無関係ながらも、同時に利用するととても便利なライブラリを紹介します。
dbflute と Maven
dbfluteは、利用上において特に Maven に依存してはいません。ですが、dbflute の利用を支援する Maven dbflute Plugin が存在し、また幾つかの dbflute Example は Maven でクラスパスを管理されています。
dbfluteランタイムの jar ファイルは、Maven リポジトリで公開されているため、アプリケーションで Maven を利用している場合、dbfluteランタイム dependency に定義するだけで利用することができます。 また、dbfluteランタイム自体のプロジェクトの管理も Maven で管理されています(ただし、dbfluteモジュールは Maven 管理ではない)。
Maven補足資料
Mavenの役割
ざっくり言うと、依存ライブラリのバージョンを解釈して自動でダウンロードしてくれます。
e.g. pom.xml concept model @Model
Java API (Stringとか) ←こいつだけじゃ足りない!
E
c ... <--(Download) sea-1.1.jar -> mystic-2.1.jar -> hangar-0.8.jar
l M ↓ -> bigband-3.4.jar
i 2 sea-1.5.jar -> mystic-2.4.jar -> hangar-1.7.jar
p E-(直参照)-+ -> bigband-3.7.jar -> piari-1.3.jar
s +-+
e | あ o land-3.2.jar -> oneman-1.8.jar -> bigband-3.5.jar
↓ | ぷ /|\
.classpath | り /\ piari-1.0.jar -> dstore-2.0.jar -> oneman-2.5.jar
↑ +-↓
| <<< pom.xml >>> ← sea と land と piari が欲しいぞと書いてある
| ↑
| M a v e n ------------------+
+-(自動生成)-- (eclipse-plugin) ↓↓
Mavenセントラルサーバー
+------------------+
| sea.jar pom.xml |
| land.jar pom.xml |
+------------------+
M2_REPOの設定
Mavenコマンドから M2_REPO を設定することができます。ただし、追加後は Eclipse を再起動する必要があります。
e.g. カレントディレクトリのワークスペースに M2_REPO を追加 @Command
mvn -Declipse.workspace=. eclipse:add-maven-repo
既に M2_REPO 登録されている状態でのこのコマンドを叩いても無視されるだけです。例えば、Eclipseに M2Eclipse プラグインが入っている場合は、M2_REPO は既に登録されている可能性があります。
Eclipseプロジェクトの作成
Mavenコマンドから Eclipse プロジェクトを作成することができます。プロジェクト直下に pom.xml を配置し、(コマンドのカレントディレクトリを pom.xml と同じ場所にして) eclipse:eclipse ゴールを実行すると、その pom.xml の設定通りの .project, .classpath ファイルが自動生成されます。 ただし、作成後は Eclipse の該当プロジェクトをリフレッシュ(F5)する必要があります。
e.g. Eclipseプロジェクトを作成 @Command
mvn eclipse:eclipse
ソースコードのダウンロードの有無
Eclipse のソースコードをダウンロードするか否かを pom.xml に定義しておくことができます。
e.g. ソースコードをダウンロード有無の設定 @pom.xml
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.8</version>
<configuration>
<workspace>${basedir}/..</workspace>
<downloadSources>true</downloadSources>
</configuration>
</plugin>
...