2013-08-08 5 views
5

私はgradleマルチプロジェクトビルドをしています。Gradle dependencies - 最新スナップショット

1つのプロジェクトでは、他のJARにいくつかの依存関係を定義していますが、常に '+'を使用してJARの最新バージョンに依存しています。

runtime group:'com.app', name: 'core', version: '+' 

これはすばらしいことですが、コアプロジェクトのバージョンを再構築するたびに、このプロジェクトは期待どおりに最新のJARを取得します。

しかし、これはバージョンでJARを明示的にビルドするときにのみ動作しますが、SNAPSHOTビルドは選択されません。例えば

、私はcore-1.0.1.jarを持っているならば、私のプロジェクトは、私はcore-1.0.2.jarを構築する、ことを使用して、プロジェクトが、私はその後、core-SNAPSHOT.jarのようなjarファイルのスナップショットのバージョンをビルドする場合、新しいjarファイルは、しかし、その後、プロジェクトが使用して残っていることまでのPclkます1.0.2バージョン。

(私はスナップショットに依存しないことをよく知っていますが、番号付きバージョンをビルドしてリポジトリにインストールするCIサーバーでこれを実行しますが、devではアドホックスナップショットビルドを構築できますconfigを変更せずにそれらを使用できるようにする)

これは可能ですか?私はこれについて何か情報を見つけることができませんでしたか?

答えて

3

通常、スナップショットには常にバージョン番号(例:1.0.3-SNAPSHOT)が含まれます。私はそれが立っているので、SNAPSHOT1.0.2より低いバージョンと考えられているので、それを拾っていないと思う。

+0

ありがとう - 私はこれをローカルで動作させると仮定します。devはちょうど999スナップショットなど何かを構築するので、いつも最新のものと見なされます。 – rhinds

+2

Mavenスナップショットを使用する場合は、Mavenの方法(バージョンx向けに作業中はx-SNAPSHOT)で使用することをお勧めします。代わりに、すべてのビルドでバージョンをバンプし、最新のバージョンを選択するために '+'(Gradle 1.8の 'latest.integration')を使用する方法もあります。 –

関連する問題