コマンドラインから特定のパッケージのivyによって取得されているバージョンを解決する方法を誰かが知っているかどうか疑問に思っていましたか?
私は次のようなものを探しています
$ ant resolve com.internal.shared.pkg latest.release
次に、「1.1.18」などを返します
はいといいえ...
それは可能ですが、あなたの側で多くの肘のグリースが必要になります. そのための Ant<target>
をbuild.xml
ファイルに書き込む必要があります。
ターゲットはインラインモード<ivy:resolve>
でタスクを使用します。これは、organization、module、およびRevisionを指定すると、Ivy がダウンロードを試みることを意味します。
そこから、いくつかのオプションがあります。<ivy:report>
レポートを生成する最も簡単な方法と思われるので、調べてみました。ただし、 経由でダウンロードして、ダウンロードした内容を確認する方が簡単<ivy:retrieve>
な場合があります。
これが私の<ivy:resolve>
見た目です:
<ivy:resolve
inline="true"
organisation="${my.org}"
module="${my.module}"
revision="${my.rev}"
conf="master"
resolveId="test.me"/>
次に、次の方法で呼び出します。
$ ant -Dmy.org=commmons-logging \
-Dmy.module="commons-logging" \
-Drev="latest.release" resolve.me
これを行うことにまだ興味がありますか?
解決されたアーティファクト属性に基づいてプロパティを作成できるツタのタスクがあります。
<project name="demo" default="resolve" xmlns:ivy="antlib:org.apache.ivy.ant">
<target name="resolve">
<ivy:artifactproperty name="[artifact].version" value="[revision]">
<dependency org="commons-logging" name="commons-logging" rev="latest.integration"/>
</ivy:artifactproperty>
<echo message="Commons logging latest = ${commons-logging.version}"/>
</target>
</project>
コマンドラインからこれを行う便利な方法はありません。お役に立てれば。
ノート: