4

電話したら

mvn clean install

Mavenは、クリーンがライフサイクルであり、インストールがデフォルトのライフサイクルのフェーズであることを認識しています。

電話したら

mvn deploy

Mavenは、デフォルトのライフサイクルのすべてのフェーズを順番に実行します。

(ライフサイクルの最後のphsaeを実行する代わりに)ライフサイクル名を付けることによってデフォルトのライフサイクルを呼び出す方法はありますか?

編集:だから問題は:コマンドはありますか

mvn lifecyclename

デフォルトのライフサイクルの実行を開始しますか?

4

3 に答える 3

8

ライフサイクル名に基づいてライフサイクルを実行するコマンドはありません。したがって、を実行して、まで実行されることを期待することはできません。、、のようなサイクルのタスクについて言及する必要があり、このタスクを所有するライフサイクルがアクティブになります。mvn DefaultDefault:deploytestpackageclean

ライフサイクルを議論として持つことは意味がありません。紛らわしいでしょう。たとえば、実行mvn cleanはクリーンライフサイクルですか、それともクリーンタスクですか?

または、入力する方がより冗長になり、mvn cleanクリーンライフサイクルが実行されます。mvn clean:cleanタスクまでクリーンライフサイクルを実行しますclean


Mavenには3つのライフサイクルがあります。いずれかのライフサイクルのタスク(たとえばtask_N)を実行すると、そのタスク(task_N)までのライフサイクル全体が実行されます。3つのライフサイクルは、 CleanDefault、およびSiteです。

詳細については、ここを参照してください。Mavenのライフサイクルとタスクの順序の概要

あなたが言うを実行するときあなたは見る、mvn testこれらはその順序で実行されるものです

検証>初期化>生成ソース>プロセスソース>生成リソース>プロセスリソース>コンパイル>プロセスクラス>後処理>生成テストソース>プロセステストソース>生成テストリソース>プロセス- test-resources> test-compile> process-test-classes> test

デフォルトのタスクをスキップすることはできません。タスク中に実行されるプラグインをフックすることができます。

于 2012-07-19T09:17:37.580 に答える
5

誤解があるようです。さらに読むと、

mvn clean

クリーンなライフサイクル全体を呼び出すわけではありません。実際、クリーンなライフサイクルにはクリーンなフェーズがあります。また、コマンドはライフサイクルではなくこのフェーズを実行します。

于 2012-07-19T09:03:57.647 に答える
1

私の知る限り、孤立したライフサイクルフェーズを実行することはできません。

ただし、分離されたプラグインの目標を実行することはできます。

mvn deploy:deploy

deployこれにより、フェーズに関連付けられたプラグインの実行はトリガーされません。ただし、いつでもコマンドラインにプラグインの実行を追加できます。したがって、すべてのプラグインの実行をスキップするプロファイルを使用することをお勧めします。

フェーズmyplugin:mygoalに関連付けられたを実行する場合は、deploy

mvn myplugin:mygoal deploy:deploy

ただし、実行の構成はCLIにある必要があります。

ただし、不要なプラグインの実行はスキップすることをお勧めします。スキップtestintegration-testてコマンドラインでのみ。ただし、デフォルトのサイクルの構成をスキップするように設定するプロファイルを使用して、これを実現できます。

<profiles>
  <profile>
    <id>skip</id>
      ...
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <configuration>
            <skip>true</skip>
            </configuration>
          </plugin>
  ...

そして、

mvn deploy -Pskip
于 2012-07-19T08:03:36.037 に答える