2016-10-23 4 views
3

私は最近、Mavenに渡すことができる--also-makeパラメータについて学びました。私が理解したところでは、my-projectだけでなく、すべてのプロジェクトがmy-projectに依存することになります。--also-makeと-also-make-dependentsの違い

mvn --projects my-project --also-make install 

しかし、--also-make-dependentsという別のパラメータもあります。説明から、それは--also-makeと同じことをするように見えますが、仕事中の私の友人は、彼らは同じことではないと私に言った。違いはなんですか?

+1

を構築します*プロジェクトリストが指定されている場合は、リスト上のプロジェクトに依存するプロジェクトもビルドします* – Tunaki

答えて

6
  • --also-makemy-projectあなたはプロジェクト(ここで、エッジA間の依存関係のDAG(有向非巡回グラフ)を想像した場合my-project

に依存するすべてのプロジェクトをビルドします

  • --also-make-dependentsに依存し、すべてのプロジェクトをビルドします - > BはBがAに依存していることを意味します)、--also-makeはプロジェクトmy-projectからルートプロジェクトに、--also-make-dependentsはプロジェクトmy-projectから "leaf"プロジェクトにすべてのプロジェクトをビルドします。

    は、あなたが以下のプロジェクトを持っているとしましょう:

    dao  util 
        \ /
        services 
        | 
        webapp 
    

    が続い

    mvn --projects services --also-make

    daoutilservicesを構築します。 `-amd`::そして

    mvn --projects services --also-make-dependents

    はhttp://maven.apache.org/ref/3.3.9/maven-embedder/cli.htmlを参照してくださいserviceswebapp