1

Ivy + Maven スナップショット + rev="latest.revision" に問題があります。Ivy はメタデータを適切に解析してアーティファクトの最新バージョンを検出していますが、ダウンロードを拒否しているようです。アーティファクトの以前のバージョンで立ち往生しています。以下のテキストは、なぜそれを行っているのか、誰かに何か考えを与えていますか?

[ivy:resolve]   listing revisions from maven-metadata: http://my-maven/content/repositories/snapshots/ca/spacek/api-project/maven-metadata.xml
[ivy:resolve]   my-snapshots: found md file for ca.spacek#api-project;latest.integration
[ivy:resolve]           => http://my-maven/content/repositories/snapshots/ca/spacek/api-project/0.0.3-SNAPSHOT/api-project-0.0.3-20121211.132856-8.pom (0.0.3-SNAPSHOT)
[ivy:resolve]   my-snapshots: revision already resolved: ca.spacek#api-project;0.0.3-SNAPSHOT

これを見て、同じように設定しようとしましpatternたが、役に立たなかったようです。このような回避策は避けたいと思っています。

4

1 に答える 1

1

スナップショットのダウンロードはうまくいきます。以下に実際の例を示します。詳細を提供することは可能ですか?

過去に Maven スナップショットの問題を見たことがありますが、それはリポジトリ メタデータ ファイルが期待どおりに更新されず、間違ったアーティファクトがダウンロードされたためでした。

別の考えられる問題は、無効なキャッシュです。おそらく、それをパージしてみることができます (以下の例の「すべてクリーンアップ」ターゲットを参照してください)。

[ivy:resolve] :: Apache Ivy 2.3.0-rc1 - 20120416000235 :: http://ant.apache.org/ivy/ ::
[ivy:resolve] :: loading settings :: file = /?????/ivysettings.xml
[ivy:resolve] :: resolving dependencies :: myOrg#Demo;????
[ivy:resolve]   confs: [default]
[ivy:resolve]   found commons-lang#commons-lang;2.7-SNAPSHOT in apache-snapshots
[ivy:resolve] downloading https://repository.apache.org/content/groups/snapshots/commons-lang/commons-lang/2.7-SNAPSHOT/commons-lang-2.7-20120610.132226-5.jar ...

build.xml

<project name="demo" default="resolve" xmlns:ivy="antlib:org.apache.ivy.ant">

    <property name="build.dir" location="build"/>

    <target name="resolve" description="Use ivy to resolve classpaths">
        <ivy:resolve/>
    </target>

    <target name="clean" description="Cleanup build files">
        <delete dir="${build.dir}"/>
    </target>

    <target name="clean-all" depends="clean" description="Additionally purge ivy cache">
        <ivy:cleancache/>
    </target>

</project>

アイビー.xml

<ivy-module version="2.0">
    <info organisation="myOrg" module="Demo"/>
    <dependencies>
        <dependency org="commons-lang" name="commons-lang" rev="2.7-SNAPSHOT"/>
    </dependencies>
</ivy-module>

ivysettings.xml

<ivysettings>
    <settings defaultResolver="repos" />
    <resolvers>
        <chain name="repos">
            <ibiblio name="central" m2compatible="true"/>   
            <ibiblio name="apache-snapshots" m2compatible="true" root="https://repository.apache.org/content/groups/snapshots"/>   
        </chain>
    </resolvers>
</ivysettings>
于 2012-12-12T00:07:59.133 に答える