私は、自動生成されたクラスを必要とするAndroidライブラリプロジェクトを持っています。このクラスは、ライブラリプロジェクトのbuildSrcディレクトリに配置されたGroovyスクリプトを使用して、ビルド時に生成されます。これは、それだけでうまくいきます。二次モジュールのGradle buildSrc依存関係
私はそのライブラリを使用しているアプリプロジェクトを持っています。そのため、Androidスタジオはアプリとライブラリの2つのモジュールで開きます。この場合、ライブラリのbuild.gradleはbuildSrcディレクトリ内のGroovyクラスを見つけることができません。
ここに私の現在のディレクトリ構造があります。
|-- app-module (main module)
|-- /* application code and resources */
|-- build.gradle
|-- library-module
|-- buildSrc
|-- CodeGenerator.groovy /* within its package */
|-- build.gradle
|-- build.gradle /* depends on CodeGenerator.groovy */
これが機能するために私が見つけた唯一の方法は、ライブラリからアプリケーション全体にbuildSrcディレクトリをコピーすることです。
メインモジュールに全体をコピーせずにGroovyビルドの依存関係を追加する別の方法はありますか?
私は同様の問題を抱えていると私はそれが失敗したかを示すために公共のgithubのを作成しました。 'myLib'プロジェクトで' gradle build'を実行すると、すべてがクリアされますが、ルートプロジェクトで 'gradle build 'を実行すると、上記の理由でうまくいきません。助けていただければ幸いです! 'git clone https:// github.com/mikesol/cradle-multi-project-buildsrc.git'を使ってプロジェクトをチェックアウトすることができます – mikesol