如何查看maven plugin所包含的goal

本文主要說明如何使用maven的help插件查看其餘maven插件提供的goal信息。react

maven項目的構建生命週期(build lifecycle)由不少階段組成:從validate到deploy。web

maven插件中包含goal。這些goal能夠被綁定到不一樣的maven的構建階段上。goal表示一個特定的任務,是一個比構建階段更細粒度的構建步驟,用於構建和管理當前項目。spring

要使用maven插件提供的goal,首先得知道這些插件提供了哪些goal以及他們的用法。apache

maven的核心插件之一 --- help插件(Maven Help Plugin)能夠用於查看插件提供了哪些goal。app

如下是maven help插件的概述信息:less

The Maven Help Plugin is used to get relative information about a project or the system. It can be used to get a description of a particular plugin, including the plugin's mojos with their parameters and component requirements, the effective POM and effective settings of the current build, and the profiles applied to the current project being built.eclipse

關於maven help插件的詳細信息請參考Maven Help Plugin頁面。此處,僅舉例說明如何使用help插件查看plugin goal的信息。maven

以maven-eclipse-plugin爲例,舉例說明。 ui

1,首先在pom.xml文件中配置插件。this

<project>
    <build>
        <plugins>            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.10</version>
                <configuration>
                    <downloadSources>true</downloadSources>
                    <downloadJavadocs>true</downloadJavadocs>
                    <wtpversion>2.0</wtpversion>
                    <wtpContextName>spring3</wtpContextName>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

2,從命令行進入項目所在路徑(pom.xml所在的路徑)。

3,按以下格式執行命令:

mvn help:describe -Dplugin=groupId:artifactId:version

如:

mvn help:describe -Dplugin=org.apache.maven.plugins:maven-eclipse-plugin:2.10

而後回車,則輸出以下信息:
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building development 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-help-plugin:2.2:describe (default-cli) @ development ---
[INFO] org.apache.maven.plugins:maven-eclipse-plugin:2.10

Name: Apache Maven Eclipse Plugin
Description: The Eclipse Plugin is used to generate Eclipse IDE files
  (.project, .classpath and the .settings folder) from a POM.
Group Id: org.apache.maven.plugins
Artifact Id: maven-eclipse-plugin
Version: 2.10
Goal Prefix: eclipse

This plugin has 12 goals:

eclipse:clean
  Description: Deletes the .project, .classpath, .wtpmodules files and
    .settings folder used by Eclipse.

eclipse:configure-workspace
  Description: Configures The following Eclipse Workspace features:
    - Adds the classpath variable MAVEN_REPO to Eclipse.
    - Optionally load Eclipse code style file via a URL.

eclipse:eclipse
  Description: Generates the following eclipse configuration files:
    - .project and .classpath files
    - .setting/org.eclipse.jdt.core.prefs with project specific compiler
      settings
    - various configuration files for WTP (Web Tools Project), if the parameter
      wtpversion is set to a valid version (WTP configuration is not generated
      by default)
    If this goal is run on a multiproject root, dependencies between modules
    will be configured as direct project dependencies in Eclipse (unless
    useProjectReferences is set to false).

eclipse:help
  Description: Display help information on maven-eclipse-plugin.
    Call mvn eclipse:help -Ddetail=true -Dgoal=<goal-name> to display parameter
    details.

eclipse:install-plugins
  Description: Install plugins resolved from the Maven repository system into
    an Eclipse instance.

eclipse:myeclipse
  Description: Generates MyEclipse configuration files

eclipse:myeclipse-clean
  Description: Deletes configuration files used by MyEclipse

eclipse:rad
  Description: Generates the rad-6 configuration files.

eclipse:rad-clean
  Description: Deletes the config files used by Rad-6. the files .j2ee and
    the file .websettings

eclipse:remove-cache
  Description: Removes the not-available marker files from the repository.

eclipse:resolve-workspace-dependencies
  Description: For all projects currently part of the workspace, all
    references to the M2_REPO classpath variable are resolved.
    Note: not the projects of the reactor are inspected for unresolved
    artifacts, but the projects that are part of the workspace.

eclipse:to-maven
  Description: Add eclipse artifacts from an eclipse installation to the
    local repo. This mojo automatically analize the eclipse directory, copy
    plugins jars to the local maven repo, and generates appropriate poms. This
    is the official central repository builder for Eclipse plugins, so it has
    the necessary default values. For customized repositories see
    MakeArtifactsMojo Typical usage: mvn eclipse:to-maven
    -DdeployTo=maven.org::default::scpexe://repo1.maven.org/home/maven/repository-staging/to-ibiblio/eclipse-staging
    -DeclipseDir=.

For more information, run 'mvn help:describe [...] -Ddetail'

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.887 s
[INFO] Finished at: 2017-09-22T11:10:52+08:00
[INFO] Final Memory: 11M/150M
[INFO] ------------------------------------------------------------------------

相關文章
相關標籤/搜索