web-dev-qa-db-ja.com

Maven:Mavenプロパティの値の概要

Mavenプロジェクトに適用されるall Mavenプロパティの値を確認したいと思います。
mvn help:systemは、OS環境変数とJVMシステムプロパティをリストしますが、Mavenプロパティはリストしません。
mvn help:evaluateはインタラクティブモードでのみ機能します。つまり、単一のMavenプロパティを入力する必要があります(例:${project.build.outputDirectory})そのプロパティの値を取得します。

すべてのMavenプロパティとそれらの値の完全なリストを取得する方法を探しています。

35
Abdull

回避策として、これをプロジェクトの_<plugins> ... </plugins>_内の_pom.xml_セクションに追加します。

_<plugin>
  <groupId>org.Apache.maven.plugins</groupId>
  <artifactId>maven-antrun-plugin</artifactId>
  <version>1.7</version>
  <executions>
    <execution>
      <phase>validate</phase>
      <goals>
        <goal>run</goal>
      </goals>
      <configuration>
        <tasks>
          <echoproperties />
        </tasks>
      </configuration>
    </execution>
  </executions>
</plugin>
_

ここで_mvn validate_を実行します。
コンソールには、接頭辞_[echoproperties]_が付いており、_project.build.outputDirectory_、basedir、_settings.localRepository_。

47
Abdull

助けになるかどうかはわかりませんが、同じことをやろうとしたときにこれを見つけました:

mvn com.github.ekryd.echo-maven-plugin:echo-maven-plugin:echo -Decho.message='${project.build.testOutputDirectory}'

から ここ

1
fhiegel

それらを「公式に」取得する方法はわかりませんが、回避策があります。プロジェクトにmaven-antrun-pluginを追加して、mvn test -Xを実行します。プラグインは、Mavenから渡されたすべてのプロパティを表示します。リストは私には完全に見えます。

1
yegor256

実際にproject.build.outputDirectoryはありますが、「検証」ではなく「コンパイル」フェーズで実行する必要があります。使用できるプロパティは、特定のプラグイン、この場合は「maven-antrun-plugin」の実行目標の現在のフェーズにも依存すると思います。

            <!-- Ant Run Plugin for debugging pom.xml and calling ant tasks -->
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>${ant.plugin.version}</version>
            <executions>
                <execution>
                    <phase>compile</phase>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <configuration>
                        <tasks>
                            <echoproperties/>
                        </tasks>
                    </configuration>
                </execution>
            </executions>
        </plugin>
0
George Smith