0

私は自分のアプリケーション (Gradle で構築され、IntelliJ で開発されました。これはここでは非常に重要なようです) をモジュール方式 (モジュールと DI に Guice を使用) で構築しようとしています。問題は、モジュールがインターフェイスを介してのみ通信するようにしたいので、理想的にはこの種の構造を実現したいということです:

+-- project
   +-- module1
      +-- src
         +-- iface
         +-- impl
         +-- test
      +-- build.gradle
   ..
   +-- moduleX
      +-- src
         +-- iface
         +-- impl
         +-- test
      +-- build.gradle

そして、build.gradle私は単に含めるproject('moduleX', configuration : 'iface')か、似たようなものにしたいと思います。

Gradle では、sourceSets などでそれを行うことができます。それはすべてクールです! しかし問題は、Gradle スクリプトで実行しているため、IntelliJ が認識しないことです。IntelliJ の場合、これはまだ単一のモジュールです。

Maven でさえ同様のプロジェクト構造をサポートしていたので、これはかなり奇妙です (私の記憶が正しければ)。これは、私が望むものを達成するための他の方法があることを意味しますか? そして、IntelliJは私がそのアプローチを使用することを期待していますか、それともifaceと残りを別々のモジュールとして分離することを望んでいますか(私が避けたいことです。開発環境が遅くなるため、プロジェクトにあまり多くのモジュールを入れたくありません) )?

4

1 に答える 1

1

ソース セットを使用するのではなく、通常、これをマルチ プロジェクト ビルドとして構造化します。これは、IntelliJ のマルチ モジュール プロジェクトと、Eclipse の複数のプロジェクトを含むワークスペースにマップされます。マルチプロジェクト ビルドの詳細については、Gradle ユーザー ガイドの対応する章を参照してください。

于 2013-11-14T02:21:10.173 に答える