= トラブルとその対処 = == Mavenリポジトリから取得できない == 特にgoogle Guice/CollectionsのSHA1チェックサムが間違っていると言われてダウンロードすることができない。 {{{ [ivy:retrieve] problem while downloading module descriptor: http://google-maven-repository.googlecode.com/svn/repository/com/google/inject/guice/2.0/guice-2.0.pom: invalid sha1: expected=6c5029102c03c627275fe183377c0586a3194425 computed=3bb8d0283ecfc05ba8dae825e46980d669265333 (550ms) }}} 解決策としては(あまりよくはないが)、ivysettings.xmlでチェックサムを無視する設定にする。 {{{ }}} 参考:<
> http://code.google.com/p/google-guice/issues/detail?id=421 == sources.jarしかとってこない == pom.xmlにてバイナリとソースを指定すると、なぜかソースしかとってこないことがある。 現在のところの対処法としてはソースを削除する。 == Eclipse上のantでのビルド時のエラー == 以下のようなエラーが発生する。 おそらく、IvyDEがeclipse-3.6にはきちんと対応していないものと思われる。 {{{ BUILD FAILED ..........\build.xml:31: Problem: failed to create task or type antlib:org.apache.ivy.ant:configure Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any / declarations have taken place. No types or tasks have been defined in this namespace yet This appears to be an antlib declaration. Action: Check that the implementing library exists in one of: -......\eclipse-3.6\plugins\org.apache.ant_1.7.1.v20100518-1145\lib -......\.ant\lib -a directory added on the command line with the -lib argument }}} 検索してみると、 {{{ ant install.avy }}} を行えとあるが、どこでこれを行えばいいのか不明。 要するに、eclipse上のantがivyのjarファイルを探し出せないだけなので、以下のようにすればよい。 * 「実行>外部ツール>外部ツールの構成」メニューを実行する。 * クラスパス」タブをクリックし、「追加タスク及びサポート」をクリック * 右側の「外部jarを追加」をクリック。 * eclipse3.6のpluginsディレクトリ中の「org.apache.ivy_*jar」を選択(ディレクトリではない)。 == 自作のモジュールの推移的依存を取得してこない == 例えば、自作のxxxというモジュールを作成し、そのjarとpom.xmlを何らかのリポジトリにおいたとする。 このxxxはaaaやbbbに依存しているとする。 このとき、他のプロジェクトyyyにてxxxへの依存を定義すれば、aaaやbbbを自動的に取得してくるはずだが、それをしてくれない。 このため、yyyではxxxのほかにaaaやbbbへの依存を記述しなければならない。 [[ivy/Evicted|Evictedに注意]]を参照のこと。 == jms.jarその他が取得できないと言われる == log4jの参照しているjms.jar等がライセンスの関係でもはやリポジトリ上にない。 手早く回避するにはlog4jを1.2.14にする。 [[http://stackoverflow.com/questions/1574534/ivy-failed-to-resolve-dependency-what-to-check-what-to-do]]