解析help:effective-pom
的輸出如何?
隨着grep
一個快速和骯髒的解決方案:
$ mvn help:effective-pom -Doutput=effective-pom.xml
$ grep "<plugin>" -A 3 effective-pom.xml
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.3</version>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
</plugin>
[...]
或使用XML解析器和一個更強大的解決方案使用XSLT或XQuery的。
例如,下面的XQuery代碼
declare default element namespace "http://maven.apache.org/POM/4.0.0";
string-join(
for $plugin in //plugin
return string-join(($plugin/groupId/text(), $plugin/artifactId/text(), $plugin/version/text()), ":"),
" "
)
會產生這種輸出的:
<?xml version="1.0" encoding="UTF-8"?>maven-antrun-plugin:1.3
maven-assembly-plugin:2.2-beta-5
maven-dependency-plugin:2.8
maven-release-plugin:2.3.2
maven-source-plugin:3.0.1
maven-clean-plugin:2.5
maven-install-plugin:2.4
maven-deploy-plugin:2.7
maven-site-plugin:3.3
注意,XML頭可以用適當的配置中除去。