Abd*_*ull 11 maven-plugin maven-3
在Maven中,我如何找出目标的默认阶段(如果此特定目标存在任何默认阶段)?
我正在使用一个名为Jetty Maven插件的Maven插件.它包含一个目标jetty:run.运行命令mvn jetty:run(注意此命令仅包含目标,而不是阶段)首先构建一个指定的pom.xmlWeb应用程序,直到默认test-compile阶段,然后将其部署在Jetty服务器中.
正如Mojo API规范中所指出的,目标可以在其源代码(via @phase或via @execute phase)中为其分配默认阶段.如果是jetty:run,默认阶段是@execute phase="test-compile".
但是找到源代码文件会变得非常复杂.有没有更简单的方法来找出默认阶段?
khm*_*ise 15
最简单的解决方案是使用maven-help-plugin,如下所示:
mvn help:describe -DartifactId=maven-compiler-plugin -DgroupId=org.apache.maven.plugins -Dgoal=compile -Ddetail
Run Code Online (Sandbox Code Playgroud)
这将打印出许多信息,但在第一行:
[INFO] Mojo: 'compiler:compile'
compiler:compile
Description: Compiles application sources
Implementation: org.apache.maven.plugin.CompilerMojo
Language: java
Bound to phase: compile
Available parameters:
....
Run Code Online (Sandbox Code Playgroud)
如果您尝试使用jetty:运行如下:
mvn help:describe -DartifactId=jetty-maven-plugin -DgroupId=org.mortbay.jetty -Dgoal=run -Ddetail
Run Code Online (Sandbox Code Playgroud)
您将获得较大的输出,但您不会看到默认阶段,因为它打算从命令行调用:
[INFO] Mojo: 'jetty:run'
jetty:run
Description: This goal is used in-situ on a Maven project without first
....
redeploying.
.....
Implementation: org.mortbay.jetty.plugin.JettyRunMojo
Language: java
Before this mojo executes, it will call:
Phase: 'test-compile'
Available parameters:
....
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2190 次 |
| 最近记录: |