免責事項: 私は Gradle を初めて使用し、多くのドキュメントを読みましたが、Maven スタイルの理解が私をつまずかせているのか、それとも睡眠依存症なのか (子供たち - 聞かないでください) はわかりませんが、私はまだわかりません。
問題の背景:
複数のモジュールで構成されるプロジェクトがあります。モジュールの 1 つは、それをdata-structure
と呼びましょうデータ構造を定義します
別のモジュールdata-structure-fabsearchは、データ構造のデータ ソースの実装を定義し、最後に
3 番目のモジュールfabsearch-commonは、いくつかの共通データを定義しますソース クラス (例: fabsearch データ ソースへの接続管理など)。
私がこのようにした理由は、fabsearch-commonのものも使用する別のモジュールが実際にあるからです。
とにかく、私のdata-structure-fabsearch build.gradle は次のようになります。
dependencies {
compile project(:data-structure)
compile project(:fabsearch-common)
}
fabsearch-commonモジュールは、fabsearch API の依存関係を宣言します( fabsearch-api-1.0.0 と呼びましょう)。
したがって、data-structure-fabsearch の依存関係ツリーは次のようになります。
- data-structure-fabsearch
- data-structure
- fabsearch-common
- fabsearch-api-1.0.0
昨夜、これはすべて素晴らしく機能していました。今朝、私は仕事に来ましたが、突然、これらの依存関係が解決されなくなりました。fabsearch-api-1.0.0 クラスへの参照は見つかりません。
私が試し
たこと 1.親build.gradleで:
project(':data-structure-fabsearch'){
apply plugin: 'java'
dependencies {
compile project(path: ':data-structure', configuration: 'compile')
compile project(path: ':fabsearch-common', configuration: 'compile')
}
}
構成設定の有無にかかわらず、これを試しました。
2. data-structure-fabsearch build.gradle ファイルで、構成パラメーターを追加します。
3. IntelliJ を再
起動する 4. Gradle ツール ウィンドウの更新アイコンをクリックする (繰り返し)
5. Gradle ユーザー ガイドで推移的な依存関係についてすべて読む
6. お茶を飲む (繰り返し)
上記のいずれも機能しません。
私
が期待していること fabsearch-common 依存関係 (fabsearch-api jar) も data-structure-fabsearch 依存関係ツリーに含まれている必要があると期待しています。data-structure-fabsearch 内の fabsearch-api クラスへのすべての参照は解決される必要があります。
私の質問[s]
これはMavenで可能ですが、Gradleでも可能ですか?
それを機能させるにはどうすればよいですか?
死なずにどれだけの睡眠デップを取ることができますか?
助けてくれてありがとう。