2016-07-26 12 views
7

私はmavenには新しく、artifactIdnameの違いについては混乱しています。MavenのアーティファクトIDと名前の違いPOM

私が知っているのは、artifactIdは、作成しているアーティファクトの名前です。 artifactIdgroupIdはアーティファクトを一意に識別するために使用されることがわかります。だから、POMの<name>目的は何ですか?下のポムのように、私はサイトからartifactIdがあり、同時に<name>があります。このプロジェクトの

+0

これらの回答は役に立ちましたか?その場合は、[回答を受け入れる]ことができます(// stackoverflow.com/help/someone-answers)。 –

答えて

2
<groupId>org.sonatype.mavenbook.multi</groupId> 
<artifactId>simple-parent</artifactId> 
<packaging>pom</packaging> 
<version>1.0</version> 
<name>Multi Chapter Simple Parent Project</name> 

groupIdartifactIdversion形態複合一意識別子(又はcoordinate)。これらの値のそれぞれは、組織化されたグループ、成果物およびバージョンを可能にするかなり厳密な命名規則を持っています。

nameは、プロジェクトの読みやすい名前であり、一意である必要はなく、同じ慣習に従う必要もありません(スペースやその他の文字を含むことができます)。

+1

+1 - 単にそれが何であるかを示すドキュメントが嫌いです:アーティファクトIDは、アーティファクトを識別するIDです。それははるかに良い理由は何ですか?アーティファクトIDがあるのはなぜですか?なぜチームはそれを作成しましたか?どのような問題が発生し、Artifact IDはどのように解決策になりましたか? – codeputer

6

artifactIdがプロジェクトの識別に役立つことは間違いありません。

nameは、単に人間が判読できる「フレンドリー」な名前です。基本的なセットアップには必要ありません。

Maven documentationから、

の成果物:たartifactIdは、プロジェクトがで知られていることが一般的に名前です。 groupIdは重要ですが、グループ内の人々はグループidを議論することはほとんどありません... groupIdと一緒に、このプロジェクトを世界の他のすべてのプロジェクトと分けるキーを作成します(少なくともそれはすべきです:)) 。 groupIdとともに、artifactIdはリポジトリ内のアーティファクトの居住地を完全に定義します。

関連する問題