私は複数のアンドロイドのアプリケーションとライブラリを含むgradleのビルドセットアップを持っています。プロジェクト構造のGradle:ネストされたプロジェクトからクラスパスの依存関係が解決されない
サンプル:
root (Project Root)
| android
| module1 (Android Application)
| module2 (Android Library)
| ios (in the future)
は、私はいくつかのサブプロジェクトに特定のGradleプラグインを適用したいです。 (このようなだけアンドロイドサブプロジェクトにアンドロイドのGradleプラグインとして) 従って私は2つのAndroidのサブプロジェクトに:android -> build.gradle
におけるクラスパス依存し、プラグインの宣言を追加した:問題はGradleのは、AndroidのGradleを発見できないことである:android:module1 -> build.gradle -> apply plugin: 'com.android.application'
と:android:module2 -> build.gradle -> apply plugin: 'com.android.library'
プラグイン:
Error:(1, 1) A problem occurred evaluating project ':Shoppr:presentation'. Plugin with id 'com.android.application' not found.
はまた、それが他のいくつかの質問(Gradleのバージョン3.1、アンドロイドのGradleプラグインのバージョン:2.2.1)のように、バージョンの問題ではありません:root -> build.gradle
か:android:moduleX -> build.gradle
にクラスパスの依存関係を定義すると、期待どおりすべてが機能しているので、 。
:ルート - > build.gradle
allprojects {
repositories {
mavenCentral()
jcenter()
}
}
:アンドロイド - > build.gradle
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.1' <-- Should only be applied for android project
}
}
:アンドロイド:Module1を - > build.gradle
apply plugin: 'com.android.application' --> Plugin with id 'com.android.application' not found.
:アンドロイド:module2 - > build.gradle
apply plugin: 'com.android.library'
ありがとうございました。私はhteモジュールの依存関係をきめ細かく制御するためにプロジェクトを分割しました。元の問題は解決しませんが、私はあなたの答えを受け入れたものとしてマークします。 – chris115379