如何查看maven plugin所包含的goal
本文主要说明如何使用maven的help插件查看其他maven插件提供的goal信息。
maven项目的构建生命周期(build lifecycle)由很多阶段组成:从validate到deploy。
maven插件中包含goal。这些goal可以被绑定到不同的maven的构建阶段上。goal表示一个特定的任务,是一个比构建阶段更细粒度的构建步骤,用于构建和管理当前项目。
要使用maven插件提供的goal,首先得知道这些插件提供了哪些goal以及他们的用法。
maven的核心插件之一 --- help插件(Maven Help Plugin)可以用于查看插件提供了哪些goal。
以下是maven help插件的概述信息:
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.
关于maven help插件的详细信息请参考Maven Help Plugin页面。此处,仅举例说明如何使用help插件查看plugin goal的信息。
以maven-eclipse-plugin为例,举例说明。
1,首先在pom.xml文件中配置插件。
<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] ------------------------------------------------------------------------
如何查看maven plugin所包含的goal的更多相关文章
- Spring Boot的Maven插件Spring Boot Maven plugin详解
Spring Boot的Maven插件(Spring Boot Maven plugin)能够以Maven的方式为应用提供Spring Boot的支持,即为Spring Boot应用提供了执行Mave ...
- 查看maven项目的依赖关系 mvn dependency:tree
maven-dependency-plugin最大的用途是帮助分析项目依赖,dependency:list能够列出项目最终解析到的依赖列表,dependency:tree能进一步的描绘项目依赖树,de ...
- 学习Maven之Cobertura Maven Plugin
cobertura-maven-plugin是个什么鬼? cobertura-maven-plugin是一个校验单元测试用例覆盖率的工具,可以生成一个测试覆盖率报告,可以给单元测试用例编写提供参考. ...
- Spring Boot Maven Plugin打包异常及三种解决方法:Unable to find main class
[背景]spring-boot项目,打包成可执行jar,项目内有两个带有main方法的类并且都使用了@SpringBootApplication注解(或者另一种情形:你有两个main方法并且所在类都没 ...
- tomcat:run和tomcat7:run的区别,以及Apache Tomcat Maven Plugin 相关
起因: 同事部署的maven项目,之前使用 jetty,现在切换到 tomcat,但是他使用的命令是 tomcat:run ,而不是 tomcat7:run,能启动,但出现问题了. 于是搜索了一番,想 ...
- Maven实现Web应用集成測试自己主动化 -- 部署自己主动化(WebTest Maven Plugin)
上篇:Maven实现Web应用集成測试自己主动化 -- 測试自己主动化(WebTest Maven Plugin) 之前介绍了怎样在maven中使用webtest插件实现web的集成測试,这里有个遗留 ...
- Spring Boot Maven Plugin(一):repackage目标
简介 Spring Boot Maven Plugin插件提供spring boot在maven中的支持.允许你打包可运行的jar包或war包. 插件提供了几个maven目标和Spring Boot ...
- Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图(转载)
Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图 2017年04月05日 10:53:13 李学凯 阅读数:104997更多 所属专栏: Intellij Idea ...
- Error : Weblogic Maven Plugin deployment WebLogic 12c
Error : Weblogic Maven Plugin deployment i want to use weblogic-maven-plugin in my maven project in ...
随机推荐
- 【Oracle】表空间管理
--表空间管理为主.附带 权限管理.数据字典 /* 表空间是逻辑结构,数据文件是物理结构 一个表空间对应多个段segment 段可以对应多个数据文件.跨磁盘 一个段对应多个盘区 extent 一个盘区 ...
- BotVS配置托管者-基于新浪云
1. 创建SAE应用 登录新浪云平台,点击创建新应用 2. SAE环境部署 在新应用中选择自定义 相应选项如下 开发语言:自定义 运行环境:云容器 语言版本:自定义 部署方式:手工部署 操作系统:系统 ...
- Akka(22): Stream:实时操控:动态管道连接-MergeHub,BroadcastHub and PartitionHub
在现实中我们会经常遇到这样的场景:有一个固定的数据源Source,我们希望按照程序运行状态来接驳任意数量的下游接收方subscriber.又或者我需要在程序运行时(runtime)把多个数据流向某个固 ...
- Spring详解(一)------概述
本系列教程我们将对 Spring 进行详解的介绍,相信你在看完后一定能够有所收获. 1.什么是 Spring ? Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开 ...
- java基础系列(三)---HashMap
java基础系列(三)---HashMap java基础系列 java基础系列(一)---String.StringBuffer.StringBuilder java基础系列(二)---Integer ...
- Android studio 安装的安装一些问题
在国内如何更新android sdk? 由于众所周知的某些原因,我们无法直接连接android sdk的更新服务更新sdk,所以可以通过国内的ftp站点把常用的sdk组件如android platfo ...
- 关于Java的发展前景
各位看官觉得Java还能火几年?未来的发展方向是什么?
- 基于C语言的UTF-8中英文替换密码设计
简要说明 本设计为湖南大学密码学的一次课程作业设计.非作业目的可随意引用. 由于本人初次接触密码学,本设计可能存在问题以及漏洞.若发现望指出. GitHub : https://github.com/ ...
- sqlserver关联更新问题
大家都知道update更新语句:update 表名 set 字段=值.似乎很简单 但是今天我遇到这样一个问题:我需要更新一张叫PO_SPECIAL_TASK_LINE表的score字段,这个分数通过另 ...
- 【1414软工助教】团队作业8——第二次项目冲刺(Beta阶段) 得分榜
题目 团队作业8--第二次项目冲刺(Beta阶段) 往期成绩 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目2:单元测试 团队作业1:团队展示 团队作业2:需求分析&a ...