4

奇妙な問題が発生しました。次のように Guava を ivy.xml に追加しました。

<dependency org="com.google.guava" name="guava" rev="14.0.1" conf="test"/>

ant を実行すると、解決されていることがわかります。

[ivy:retrieve]  found com.google.guava#guava;14.0.1 in default

~/.ivy2/cache でファイルを見つけることができます。しかし、それは私の lib ディレクトリにコピーされませんでした。

他の依存関係には問題はありません....アドバイスはありますか?ありがとう。

4

3 に答える 3

1

ivy.xml で構成マッピングを指定する

私は同じ問題を抱えていて、依存関係がどこにダウンロードされたかを一生理解できませんでした。Ivy はそれがダウンロードされたことを示唆しているようで、キャッシュにはいくつかのエントリがありましたが、私の /lib には何も表示されませんでした。

---------------------------------------------------------------------
|                  |            modules            ||   artifacts   |
|       conf       | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
|      compile     |   2   |   2   |   2   |   0   ||   0   |   0   |
---------------------------------------------------------------------

しかし、この答えを見たとき、すべてが変わりました。

ではivy.xml、構成マッピングを指定する必要がありますconf="myconfig->default"。キーは->default

<configurations>
    <conf name="myconfig" description="Required for JSF"/>
</configurations>

<dependencies>
    <dependency conf="myconfig->default" name="jsf-api" org="com.sun.faces" rev="2.2.13"/>          
</dependencies>

これにより、ユーザー定義の構成が Maven スコープ (正確にはdefaultスコープ) にマップされます。default実際には、またはmasterスコープ ( source )のみを使用します。

見る:

私の直感では、これは Maven リポジトリを指している場合にのみ必要です。それ以外は試していません。

すでにこれを行ってもダウンロードされない場合は、@javabrett の回答が役立つ可能性があります。

于 2016-05-17T08:34:21.667 に答える
0

解決するだけでなく、本当に <ivy:retrieve /> を使用した場合は、おそらく conf="test->default" を使用する必要があるためですか?

于 2013-05-10T23:10:01.007 に答える
0

com.google.guava:guava:14.0.1これは、OSGibundleではなくMaven のパッケージ タイプが原因ですjar。これには解決済みのIvy バグがありますが、解決策は完全ではありません。

両方のパッケージ タイプをダウンロードする場合は、指定を避けtype="jar"、代わりに使用する必要があります。type="jar,bundle"

this questionPOM definitionも参照してください。

于 2015-09-25T12:44:29.150 に答える