あなたのアイデアに基づいて、私は次のフォルダ構造を提案します:
+-- ProjectParent
+-- Project-core
+-- project-DAO
+-- project-messages
+-- project-services
+-- project-testing
+-- project-web
これにより、次のような適切なバージョンで依存関係を定義するためのdependencyManagementセクションを含む親(ProjectParent)が作成されます。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>testng</groupId>
<artifactId>testng</artifactId>
<version>6.3.1</version>
<scope>test</scope>
</dependency>
...
</dependencies>
</dependencyManagement>
すべてのモジュールで、親が親を参照する必要があります。
com.company.projectプロジェクト-親1.0.0-SNAPSHOT
モジュールでは、定義するだけです
<dependencies>
<dependency>
<groupId>testng</groupId>
<artifactId>testng</artifactId>
</dependency>
..
</dependencies>
親からの依存関係を使用します。
これにより、依存関係の更新が簡素化されます。これにより、バージョンが単一のポイントに配置されます。つまり、親ルートに配置され、異なるモジュールに分散されません。