私は、Gradleのセットアップに関してオンラインで多くの投稿があることを認識しています。それは言われている、私は重く調査し、私が探しているものを正確に見つけなかった、または私はそうするために間違った言葉を使っている。私はGradleバージョン3.3を使用しています。他のプロジェクトのモジュールに対するGradleの依存関係に失敗しました
私は複数のGradleプロジェクトを持っています。それぞれのプロジェクトは別々に管理されています。マスターGradleプロジェクトはありません。各プロジェクトには独自のモジュール、ビルド、設定ファイルがあります。この構造はほどです:
Projects
A
a1
build.gradle
a2
build.gradle
build.gradle
settings.gradle
B
b1
build.gradle
b2
build.gradle
build.gradle
settings.gradle
私がしようとしてる何AのモジュールにBが依存させるです。 Bのモジュールの1つがa1に依存しているとしましょう。 Bの設定では、私は次のことをやった:
rootProject.name = 'B'
rootProject.setProjectDir(new File(".")
include 'a1'
project(':a1').setProjectDir(new File(settingsDir.getParentFile(), "/A/a1"))
私はバージョン番号を格納しています方法は内線クロージャ内の各プロジェクトのbuild.gradleファイルを介してです。私はプロジェクトを通してそれらにアクセスします。ここでBのビルドファイルがどのように見えるかです:
ext {
freemarkerVersion = '2.3.19'
}
dependencies {
compile project(':a1')
compile group: 'org.freemarker', name: 'freemarker', version: rootProject.properties.get('freemarkerVersion')
}
私は何を見ていると、Bはその依存関係を解決することができ、プロジェクトのA1をコンパイルしようとしているが、それはBのバージョン番号の代わりに、Aさんが使用しています。私は、異なるバージョン番号の両方のプロジェクトに共通の依存関係を置くことでこれを検証しました。 Bのバージョンを使用して依存関係が表示されました。私もBのバージョン番号を変更し、これをさらに確認しました。だから、それぞれのbuild.gradleファイルでプロジェクトに適したバージョンを使用するための助けを得ることができたら、それは素晴らしいことです!
編集:以前の問題は解決されていない相対パスからのものでした。