2012-04-18 14 views
8

私はAnt/IvyからGradleに移行しており、ローカルIvyリポジトリへの相対パスの指定方法を理解しようとしています。スタンドアロンのIvyは、ユーザのホームディレクトリに変数${ivy.default.ivy.user.dir}をデフォルトで.ivy2に設定し、そこでローカルリポジトリを配置します。GradleのローカルIvyレポへの相対パスを指定する方法は?

次のように私はこれをシミュレートすることができます。

repositories { 
    ivy { 
     url "C:/Users/RYAN/.ivy2/local" 
     layout 'pattern', { 
      artifact "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
      ivy "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
    } 
} 

しかし、私は絶対パスを指定する必要はありません。 GRADLE_USER_HOME環境変数がありますが、Gradleはデフォルトでそれを設定しません。コマンドラインを指定する必要があります。

GradleはデフォルトのローカルIvyレポにアクセスする方法を提供していますか?

答えて

11

どのように使用について:

url "${System.properties['user.home']}/.ivy2/local" 
+0

おかげで、仕事をしています。私はまだIvyの_default_プロパティのいくつかにアクセスしたいのですが、これは絶対パスを避けるために機能します。 –

+0

Gradleにこのようなショートカットがあるとは思わない...(つまり、mavenCentral()repo oneのように)...この機能は、いつでもGradleフォーラムでリクエストできます。 – vicsz

+0

オプションで、常にivy.default.ivy.user.dirシステム・プロパティーが設定されていることを確認し、それを使用して私の例では 'user.home'を置き換えることができます。 – vicsz

関連する問題