Mavenプロジェクトに適用されるall Mavenプロパティの値を確認したいと思います。mvn help:system
は、OS環境変数とJVMシステムプロパティをリストしますが、Mavenプロパティはリストしません。mvn help:evaluate
はインタラクティブモードでのみ機能します。つまり、単一のMavenプロパティを入力する必要があります(例:${project.build.outputDirectory}
)そのプロパティの値を取得します。
すべてのMavenプロパティとそれらの値の完全なリストを取得する方法を探しています。
回避策として、これをプロジェクトの_<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
_。
助けになるかどうかはわかりませんが、同じことをやろうとしたときにこれを見つけました:
mvn com.github.ekryd.echo-maven-plugin:echo-maven-plugin:echo -Decho.message='${project.build.testOutputDirectory}'
から ここ
それらを「公式に」取得する方法はわかりませんが、回避策があります。プロジェクトにmaven-antrun-plugin
を追加して、mvn test -X
を実行します。プラグインは、Mavenから渡されたすべてのプロパティを表示します。リストは私には完全に見えます。
実際に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>