17

projectとモジュールという名前のプロジェクトがあると仮定するmodule1module2、以前は次の名前付け戦略を使用する傾向があります。

-- project
  -- projectModule1
  -- projectModule2

今私は別のものを使用します:

-- project
  -- project-module1
  -- project-module2

Mavenモジュールの命名のベストプラクティスは何ですか?

4

3 に答える 3

24

これについては「効果的な実装」の本にいくつかメモを書きましたが、規則や標準的な慣習はありません。

いくつかを要約すると:

まず第一に、最も重要なことはあなたが一貫しているということです。

一般的なMaven規則では、区切り文字(commons-langmaven-model)として「-」を使用します。

外部で使用する場合は、module = artifact ID = filename(ベストプラクティスで)覚えておく必要があります。そのため、認識できる必要があります(maven-model-2.0.jar明確ですが、そうでmodel-2.0.jarはありません)。この場合、通常、グループIDの最後の要素をミニ名前空間として繰り返します。「内部」モジュールは、簡潔にするためにそれを省略できます(サンプルアプリケーションが示すように:http://github.com/brettporter/centrepoint/tree/master/centrepoint/modules/)。

それとは別に、できるだけ短くしておきます。

Javaパッケージとクラスの命名規則をMavenグループIDとアーティファクトIDに類似させることができます。

于 2010-08-18T12:49:46.267 に答える
5

私は通常、モジュール名を簡潔にするようにしています。名前を「長くしたい」場合は、別のネスト レベルがおそらく良い考えであることを示しています。したがって、これの代わりに:

- root
    - api
    - impl
    - security
    - service-soap
    - service-rest
    - client-swing
    - client-web-html
    - client-web-mobile

さらにネストします:

- root
    - api
    - impl
    - security
    - service
        - soap
        - rest
    - client
        - swing
        - web
            - html
            - mobile

Maven リアクター オプションを使用すると、トップから分離されたネストされたモジュールを引き続きビルドできます。

mvn -pl client/web clean install
于 2010-08-18T15:07:47.727 に答える
1

さらに一歩進むこともできます:

-- project
  -- project-module-1
  -- project-module-2

今は冗談ではありません、これは本当に好みの問題です。

良い一日を

于 2010-08-18T07:34:34.310 に答える