28
  • マイクロサービスであるいくつかのプロジェクトがあり、すべてのプロジェクトは独立しています (別のスプリング ブート サーバーで実行され、残りのサービスを公開し、別の DB スキーマを使用します...)
  • 依存関係の管理には maven を使用します。

各マイクロサービスをモジュールとして宣言する親 pom を持つことは良い考えですか? そして、共通の依存関係を管理するのに役立ちます (lib servlet-api witch がすべてのプロジェクトで使用され、それらすべてを削除し、親 pom でのみ宣言するように)

4

6 に答える 6

9

親 pom の依存関係は避けます。(独立した) マイクロサービスの 1 つが他のものを必要とする場合は厄介です。親に各マイクロサービスを知ってもらうのは奇妙です。

ただし、必要に応じてデフォルトのバージョン/スコープを提案するために、dependencyManagement に固執することができます。親 pom は、プラグインやリポジトリなどを定義するのに非常に便利です。

代わりに、依存関係の共通セットを特定のアーティファクトにグループ化します。これは、依存関係を持つ単一の pom のみである可能性があります。次に、たとえば「com.example/common-db-dependencies/1.2」に依存して、休止状態、Apache derby、JPA 仕様などのデータベース依存関係の標準セットを含めることができます。(またはあなたが使っているものは何でも)。JPA/SQL を使用しないサービスは、その依存関係をまとめて回避できます。

ただし、絡まないでください。それぞれのケースをカバーしようとすると、依存関係の構造を過度に処理するのは簡単です。したがって、大多数のサービスで実際に使用されるものだけを標準化するようにしてください。

于 2015-01-10T15:56:59.273 に答える