【发布时间】:2015-12-10 21:11:46
【问题描述】:
我试图了解 mvn clean:clean 的实际作用。
mvn -B help:describe -Dcmd=clean
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building sample-one 1.0.0
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-help-plugin:2.2:describe (default-cli) @ sample-one ---
[INFO] 'clean' is a lifecycle with the following phases:
* pre-clean: Not defined
* clean: org.apache.maven.plugins:maven-clean-plugin:2.5:clean
* post-clean: Not defined
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.689 s
[INFO] Finished at: 2015-12-10T10:20:16-08:00
[INFO] Final Memory: 9M/245M
[INFO] ------------------------------------------------------------------------
在我看来mvn clean:clean 与mvn org.apache.maven.plugins:maven-clean-plugin:2.5:clean 相同。因此我假设mvn clean:clean 中的第一个clean 只是org.apache.maven.plugins:maven-clean-plugin:2.5 的别名。同样mvn maven-surefire-plugin:2.12.4:test 与mvn surefire:test 相同。
所以不知何故,maven-surefire-plugin:2.12.4 似乎指的是surefire 和org.apache.maven.plugins:maven-clean-plugin:2.5 指clean。
当我查看有效的 pom 时,我看到以下内容 maven-surefire-插件 2.12.4 默认测试 测试 测试 Maven 清洁插件 2.5 默认清理 干净的 干净的
如您所见,pom 似乎没有定义别名。所以以下是我的问题
- 我对插件别名的理解是否正确
- 如果我对别名的理解是正确的 - a) 它们是如何定义的以及在哪里定义的? b) 有没有办法列出所有别名。
【问题讨论】: