web-dev-qa-db-ja.com

maven-archetype-pluginを使用してプロジェクトを作成する方法は? artefactIdなどとは何ですか?

私はMavenを初めて使用し、maven.Apache.orgtutorial here を導入として使用しています。

チュートリアルの「最初のMavenプロジェクトの作成方法」セクションでは、次のコマンドを実行してMavenアーキタイププロジェクトを生成する方法を説明しています。

mvn archetype:generate

Mavenが多くのアーティファクトをダウンロードした後、突然停止し、コマンドラインで次の質問を要求しました。

Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 149:

Apacheチュートリアルでは、このプロンプトについては説明していません。

2つの質問があります:

1。上記の質問は何ですか? mvn archetype:generateプロセスは続行しますか?

2。従来、人々はmvn archetype:generate Mavenプロジェクトを作成しますか?

-------------- Update ---------------------

最初の質問に関して、値を入力せずに「Enter」を押すと、次の出力が得られました。

Choose version: 
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6: 

それは何ですか?

上記の場合に「1」を入力すると、次のものが得られました。

Define value for property 'package':  : :
Define value for property 'groupId': : 
Define value for property 'artifactId': :
...

どうすれば定義できますか?

41
Mellon

mvn archetype:generateコマンドを使用して、既存のテンプレートからプロジェクトを作成します。多くの開発者やプロジェクトグループによって定義されたいくつかのアーキタイプがあります。コマンドを実行すると、mavenは次のことを行います。

  1. Maven-archetype-pluginの最新バージョンをダウンロードします。
  2. プロジェクトの作成に使用できるすべてのアーキタイプをリストします。コマンドの呼び出し中にアーキタイプを定義した場合、mavenはステップ4にジャンプします。
  3. デフォルトでは、mavenはmaven-archetype-quickstartarchetypeを選択します。これは基本的に、MavenHello Worldプロジェクトを作成しますソースおよびテストクラス。単純なプロジェクトを作成する場合は、Enterキーを押すだけで続行できます。特定のタイプのアプリケーションを作成する場合は、ニーズに合ったアーキタイプを見つけて、そのアーキタイプの番号を入力し、Enterキーを押す必要があります。例えば。 webappプロジェクトを作成する場合は、153を入力できます(これはこのアーキタイプの現在の番号であり、時間とともに変化する可能性があります)。
  4. アーキタイプはテンプレートであり、現在のベストプラクティスを反映することを目的としているため、時間とともに進化する可能性があり、独自のバージョンがあります。 Mavenは、使用するアーキタイプのバージョンを尋ねます。デフォルトでは、mavenは最新バージョンを選択します。したがって、アーキタイプの最新バージョンを使用することに同意する場合は、このステップでEnterキーを押すだけです。
  5. すべてのMavenプロジェクト(およびモジュール)には、groupId、artifactId、およびバージョンがあります。 Mavenは、これらを3つのステップで要求します。 groupId:これは通常、組織またはプロジェクト間で一意です。 artifactId:artifactIdは、一般的にプロジェクトが知られている名前です。バージョン:これはネーミングパズルの最後のピースです。( 続きを読む
  6. 最後に、mavenはコードのパッケージ構造を尋ねます。ベストプラクティスは、groupIdを反映するフォルダー構造を作成することです。したがって、Mavenはこれをデフォルトとして設定しますが、これは自由に変更できます。

これらの情報を入力すると、Mavenは入力したすべての情報を表示し、プロジェクトの作成を確認するように求めます。 Yキーを押して入力すると、選択したアーティファクトと設定でプロジェクトが作成されます。

maven-archetype-plugin の使用サイトも読むことができます。

40
melihcelik

プロジェクトのシードに使用するアーキタイプを尋ねています。そのプロンプトで「Enter」を押すと、利用可能な選択肢のリストが表示されます。 maven-archetype-quickstartを使用して単純なプロジェクトを作成できます(この後にリポジトリを選択するよう求められる場合があります。その場合は、これを入力した後にリストされた最初のリポジトリに対応する番号を入力します)。

他の質問に答えるには:はい、アーキタイプを使用することは、新しいプロジェクトをセットアップする一般的な方法です。主に、あらゆる種類のプロジェクト/モジュール用のアーキタイプがたくさんあるからです。必要なアーキタイプがわかったら、それを使用してbootstrapプロジェクトを開始するのが最も簡単な方法です。

4
Chris

チュートリアルをざっと見てみると、archetype:generateコマンドの一部のパラメーターが省略されていることがわかります。そのため、チュートリアルプロジェクトを生成するために選択するアーキタイプがわからず、使用可能なすべてのアーキタイプ(149)が表示されます。

最初の質問:Returnキーを押して、アーキタイププラグインの提案を受け入れ、#149を選択します。このアーキタイプはさまざまなバージョンで終了します。

2番目の質問:アーキタイプは一種のテンプレートなので、多くの作業を節約できます。はい、それは一般的です。しかし、唯一の方法ではありません-いつでも空のプロジェクトから始めることができます。

1
Jan

短い形式を使用することもできます

mvn archetype:generate -Dfilter=org.example.group:example-artifact

またはグループのみ:

mvn archetype:generate -Dfilter=org.example.group:

構成されたカタログに存在する場合、次のアーティファクト(最初の場合)を取得します。

<groupId>org.example.group</groupId>
<artifactId>example-artifact</artifactId>

または、複数の候補がある場合は、複数の提案が表示されます。そのため、選択リストに表示されたインデックスを入力して、それらを選択する必要があります。

詳細については、maven website を参照してください!

0
Picrochole