Doltengで生成したpom.xmlのハマリどころ。
以前ハマった経験より。
Doltengで自動生成したプロジェクトのpom.xmlにこんな記述があります。
<repository> <id>local</id> <name>Local Repository</name> <url>file:repo</url> </repository>
この記述は、プロジェクト内にjarを配置することで、公開リポジトリにないjar(たとえばojdbc6.jarとか)のインストールを簡略化させるためのものです(たぶん)。
具体的に言うと、プロジェクトをsvnなどで配布したときに、個々の開発者がmvn installを叩いてojdbc6.jarとかをローカルリポジトリにインストールする必要がなくなります。
はずなのですが、これが機能していなくてかなり悩みました。。。
まずは、プロジェクト内にこんな感じでjarを配置します。
my-project + repo + com + oracle + ojdbc6 + 11.2.0.1.0 + ojdbc6-11.2.0.1.0.jar
で、pom.xmlにこんな感じで依存を追加します。
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.1.0</version> </dependency>
そして、m2eclipseから依存を解決させます。
プロジェクト右クリック->Maven->依存関係の更新
これでローカルリポジトリにojdbc6.jarがインストールされると思いきや、こんなメッセージが。。。
10/04/14 23:55:19 JST: Missing artifact com.oracle:ojdbc6:jar:11.2.0.1.0:compile
見つからないようだ。。。
色々と試行錯誤した結果、pom.xmlを以下のように書き換えることで解決。
local Local Repository file:${basedir}/repo
ojdbc6.jarがローカルリポジトリにインストールされ、依存もきちんと解決されました。
ちなみに、環境はこんな感じ。環境の問題なのだろうか。。。?
Dolteng | 0.40.0 |
---|---|
m2eclipse | 0.10.0.20100209-0800 |
Maven | 2.2.1 |