不绑定到任何构建阶段的目标可以在构建生命周期之外通过直接调用执行。这些目标的执行顺序取决于调用目标和构建阶段的顺序。... site> org.apache.maven.plugins:maven-site-plugin:3.3:site...site> site-deploy> org.apache.maven.plugins:maven-site-plugin:3.3:deploy site-deploy>... pre-site:执行一些需要在生成站点文档之前完成的工作 site:生成项目的站点文档 post-site: 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备...site-deploy:将生成的站点文档部署到特定的服务器上 这里经常用到的是site阶段和site-deploy阶段,用以生成和发布Maven站点 Plugin bindings for jar
本文的目标是希望读者能够通过本文能对Maven核心原理有个相对深入的理解. 坐标与依赖 为了能够自动化地解析任何一个Java构件, Maven必须将它们唯一标识, 这就是依赖管理的底层基础-坐标....由于原始的本地仓库是空的, Maven必须至少知道一个远程仓库才能在执行命令时下载需要的构件, 中央仓库就是这样一个默认的远程仓库....执行如$ mvn clean install; site site生命周期的目的是建立和发布项目站点: Maven能够基于POM所包含的信息,自动生成一个友好的站点,方便团队交流和发布项目信息 ?...内置绑定 为了能让用户几乎不用任何配置就能使用Maven构建项目, Maven 默认为一些核心的生命周期绑定了插件目标, 当用户通过命令调用生命周期阶段时, 对应的插件目标就会执行相应的逻辑. clean...site生命周期阶段绑定 生命周期阶段 插件目标 pre-site - site maven-site-plugin:site post-site - site-deploy maven-site-plugin
maven-site-plugin 3.3... 不然运行 mvn site 命令时出现 java.lang.NoClassDefFoundError: org/apache/maven/doxia/siterenderer/DocumentContent...的问题, 这是由于 maven-site-plugin 版本过低,升级到 3.3+ 即可。...打开 consumerBanking 文件夹并执行以下 mvn 命令。...Maven 使用一个名为 Doxia的文档处理引擎来创建文档,它能将多种格式的源码读取成一种通用的文档模型。要为你的项目撰写文档,你可以将内容写成下面几种常用的,可被 Doxia 转化的格式。
可选值有 warn:默认值,输出警告信息 fail:直接构建失败 ignore:忽略校验和错误 有时会遇到jar包更新不到本地的情况,可以在执行maven命令时加上-U参数强制检查更新,如...插件的默认绑定阶段 有一些插件的目标在编写时会绑定到默认阶段,例如上面提到的compile就是默认绑定的。...的default生命周期中有一个test阶段专门用于执行单元测试,默认单元测试插件:maven-surefire-plugin,绑定目标test 该插件会自动检测src/test/java下以Test开头的类...9.1 生成站点 使用mvn site命令可以将项目信息生成站点到target/site 针对多模块项目,可能更希望把所有模块的信息汇总一个目录,可以使用mvn site:stage,默认汇总到target.../staging,但必须先执行mvn site 在站点中增加静态检查报告:(findbugs必须先package生成classes) org.apache.maven.plugins
在大多数情况下,install: install 目标不需要任何配置,它需要在默认构建生命周期的安装阶段安装项目的 POM 和工件文件。...如果 JAR 是由 Apache Maven 构建的,那么它将在 META-INF 目录的子文件夹中包含 pom.xml,默认情况下将读取该文件夹。...Plugin Apache Maven Site Plugin – Introduction http://maven.apache.org/plugins/maven-site-plugin/ Packaging...要创建一个简单的 Java 应用,我们将使用 maven-archetype-quickstart 插件。...生成站点 mvn clean 清理 mvn install 安装
生命周期:Maven 的生命周期包括 clean、default、site 等三个阶段,每个阶段都包含多个目标。3、**Maven 的配置文件是什么?它的默认路径是什么?...**Maven 的生命周期分为以下三个阶段:Clean:清理项目。Default:编译、测试、打包、安装、部署等。Site:生成项目文档和站点。7、**Maven 的默认仓库是什么?...maven-site-plugin:生成项目站点。maven-source-plugin:生成源代码的 JAR 包。maven-javadoc-plugin:生成 Javadoc 文档。...**使用 Maven 的 test 命令运行单元测试:mvn test16、**如何跳过单元测试执行?...Java 版本?
site生命周期 site生命周期的目的是建立和发布项目站点,Maven能够基于pom.xml所包含的信息,自动生成一个友好的站点,方便团队交流和发布项目信息。...主要包含以下4个阶段: 阶段 描述 pre-site 执行一些需要在生成站点文档之前完成的工作 site 生成项目的站点文档 post-site 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备...site-deploy 将生成的站点文档部署到特定的服务器上 mvn命令和生命周期 从命令行执行maven任务的最主要方式就是调用maven生命周期的阶段,需要注意的是,每套生命周期是相互独立的,但是每套生命周期中阶段是有前后依赖关系的...目标参数 插件目标是用来执行任务的,那么执行任务肯定是有参数配的,这些就是目标的参数,每个插件目标对应于java中的一个类,参数就对应于这个类中的属性。...site生命周期阶段与插件绑定关系 生命周期阶段 插件:目标 pre-site site maven-site-plugin:site post-site site-deploy maven-site-plugin
目标参数 插件目标是用来执行任务的,那么执行任务肯定是有参数配的,这些就是目标的参数,每个插件目标对应于java中的一个类,参数就对应于这个类中的属性。...当我们将生命周期中的阶段和插件的目标进行绑定的时候,执行mvn 阶段就可以执行和这些阶段绑定的插件目标。...,而将一些阶段默认和这些插件阶段绑定好了,所以我们不用做任何配置就可以执行清理代码、编译代码、测试、打包、安装到本地仓库、上传到远程仓库等阶段的操作,是因为maven已经默认给这些阶段绑定好了插件目标,...site生命周期阶段与插件绑定关系 生命周期阶段 插件:目标 pre-site site maven-site-plugin:site post-site site-deploy maven-site-plugin...自定义绑定 除了默认绑定的一些操作,我们自己也可以将一些阶段绑定到指定的插件目标上来完成一些操作,这种自定义绑定让maven项目在构件的过程中可以执行更多更丰富的操作。
Super POM中定义了所有的默认的配置项。...此外,maven-help-plugin的describe目标可以帮助你描述任何一个Maven插件的信息,还有all-profiles目标和active-profiles目标帮助查看项目的Profile...所以执行mvn help:effective-pom就可以列出所有的配置项,我对空项目执行了一下这个命令,把默认的所有插件整理了一下,总结如下: //知乎怎么还不支持表格 | parse | plugin...| maven-site-plugin | site | | site-deploy | maven-site-plugin | deploy | 这里出现了maven内部运行原理解析中没有提到的几个...parse:[clean/site/site-deploy]这几个的含义在这个帖子找到了答案:maven的三大生命周期 现在知道了具体每个阶段执行的是哪个方法,剩下的只要获取插件的代码就能完整的分析整个打包流程了
我们希望我们已经创建了一些东西,使 Java 开发人员的日常工作更容易,并且通常有助于理解任何基于 Java 的项目。...例如org.apache.maven.plugins是所有 Maven 插件的指定 groupId。artifactId此元素指示此项目生成的主要工件的唯一基本名称。...这方面的示例是构建目录,即target; 源目录,即src/main/java;测试源目录,即src/test/java;等等。执行任务或目标时,Maven 会在当前目录中查找 POM。...它读取 POM,获取所需的配置信息,然后执行目标。可以在 POM 中指定的一些配置是项目依赖项、可以执行的插件或目标、构建配置文件等。还可以指定其他信息,例如项目版本、描述、开发人员、邮件列表等。...报告插件在站点生成期间执行并在元素中配置。所有插件都应具有最少的必需信息:groupId、artifactId和version。
第一章 Maven简介 1.1何为Maven maven翻译为“知识的积累”,“内行”,“专家” 作为Apache组织中颇为成功的一个开源项目,Maven主要服务于基于Java平台的项目构建,依赖管理和项目信息管理...建立项目站点 4个:pre-site、site、post-site、site-deploy 插件目标 一个插件包含多个功能,每个功能对应一个插件目标 maven-dependency-plugin...default 生命周期的内置插件绑定关系及具体任务(打包类型:jar) 生命周期阶段 插件目标 执行任务 process-resources maven-resources-plugin...site 生命周期 site 生命周期的阶段 插件的目标 pre-site site maven-site-plugin:site post-site site-deploy...maven-site-plugin:deploy 第八章 聚合与继承 约定 一般来说,一个项目的子模块都应该使用相同的groupId,如果他们一起开发和发布,还应该使用同样的version
进入到项目的pom.xml目录之后,就可以执行啦。 1、运行 mvn compile ? img OK,运行完毕,你在pom.xml配置的依赖的包已经导入到仓库了,问题来了,仓库默认的位置在哪?...**仓库的默认位置:**c:\Usrs[登录当前系统的用户名].m2\repository 刚才执行完compile之后,之前的文件夹发生了变化 ?...maven坐标来获取jar包,获取到jar之后会下载到本地仓库 对于中央仓库也找不到依赖的jar包的时候,就会编译失败了 ② 如果依赖的是自己或者团队开发的maven工程,需要先使用install命令把被依赖的...③ Site Lifecycle 生成项目报告,站点,发布站点。...pre-site 执行一些需要在生成站点文档之前完成的工作 site 生成项目的站点文档 post-site 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备 site-deploy 将生成的站点文档部署到特定的服务器上
进入到项目的pom.xml目录之后,就可以执行啦。 1、运行 mvn compile ? OK,运行完毕,你在pom.xml配置的依赖的包已经导入到仓库了,问题来了,仓库默认的位置在哪?...仓库的默认位置:c:\Usrs[登录当前系统的用户名].m2\repository 刚才执行完compile之后,之前的文件夹发生了变化 ? 我们发现Hello项目里里多了一个target文件夹。...maven坐标来获取jar包,获取到jar之后会下载到本地仓库 对于中央仓库也找不到依赖的jar包的时候,就会编译失败了 ② 如果依赖的是自己或者团队开发的maven工程,需要先使用install命令把被依赖的...③ Site Lifecycle 生成项目报告,站点,发布站点。...pre-site 执行一些需要在生成站点文档之前完成的工作 site 生成项目的站点文档 post-site 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备 site-deploy 将生成的站点文档部署到特定的服务器上
进入到项目的pom.xml目录之后,就可以执行啦。 1、运行 mvn compile ? OK,运行完毕,你在pom.xml配置的依赖的包已经导入到仓库了,问题来了,仓库默认的位置在哪?...仓库的默认位置:c:\Usrs\[登录当前系统的用户名]\.m2\repository 刚才执行完compile之后,之前的文件夹发生了变化 ? 我们发现Hello项目里里多了一个target文件夹。...③ Site Lifecycle 生成项目报告,站点,发布站点。 ...1、pre-site 执行一些需要在生成站点文档之前完成的工作 2、site 生成项目的站点文档 3、post-site 执行一些需要在生成站点文档之后完成的工作,...并且为部署做准备 4、site-deploy 将生成的站点文档部署到特定的服务器上 七、Eclipse中使用maven ①、配置 选择菜单windows-->preferences
进入到项目的pom.xml目录之后,就可以执行啦。 1、运行 mvn compile ? OK,运行完毕,你在pom.xml配置的依赖的包已经导入到仓库了,问题来了,仓库默认的位置在哪?...仓库的默认位置:c:Usrs[登录当前系统的用户名].m2 epository 刚才执行完compile之后,之前的文件夹发生了变化 ? 我们发现Hello项目里里多了一个target文件夹。...③ Site Lifecycle 生成项目报告,站点,发布站点。 ...1、pre-site 执行一些需要在生成站点文档之前完成的工作 2、site 生成项目的站点文档 3、post-site 执行一些需要在生成站点文档之后完成的工作,...并且为部署做准备 4、site-deploy 将生成的站点文档部署到特定的服务器上 七、Eclipse中使用maven ①、配置 选择菜单windows-->preferences
>org.apache.maven.plugins maven-source-plugin...修改本地仓库地址 mvn 项目构建的生命周期 maven 生命周期 一些要点 clean 清理项目 default 构建项目 site 生成项目站点 执行生命周期的某一步骤会默认执行以前的步骤...例如package 之前会install 、test clean 清理项目 pre-clean 执行清理之前的文件 clean 清理上一次构建生成的所有文件 post-clean 执行清理后的文件...default 构建项目 [核心] compile test package install site 生成项目站点 pre-site 生成项目站点前完成的工作 site 生成项目的站点文档 post-site...在生成项目站点后完成的工作 site-deploy 发布生成站点到服务器上
POM包含的项目是使用Maven来构建的,用来包含各种配置信息、目标、插件等,在执行任务或目标时,Maven会使用当前目录中的POM文件,读取得到所需要的配置信息,然后执行目标。...构建生命周期中test阶段默认绑定的插件目标就是Maven Surefire Plugin中的test目标,无需额外配置,直接运行mvn test就可以。...下面列出default、clean和site生命周期的所有构建阶段,这些阶段按照指定的顺序执行: 1、clean生命周期(处理项目清理工作) (1)pre-clean 在实际的项目清理之前执行所需的过程...3、site生命周期(处理项目所生成的文档) (1)pre-site 在实际的项目站点生成之前执行过程。 (2)site 生成项目的站点文档。...(3)post-site 执行确定站点生成的过程,并为站点部署做好准备。 (4)site-deploy 将生成的站点文档部署到指定的web服务器。
:将以前编译得到的旧文件class字节码文件删除 编译compile:将java源程序编译成class字节码文件 测试test:自动测试,自动调用junit程序 报告report:测试程序执行的结果 打包...仓库的默认位置:c:\Usrs[登录当前系统的用户名].m2\repository 刚才执行完compile之后,之前的文件夹发生了变化 图片 我们发现Hello项目里里多了一个target文件夹。...maven坐标来获取jar包,获取到jar之后会下载到本地仓库 对于中央仓库也找不到依赖的jar包的时候,就会编译失败了 ② 如果依赖的是自己或者团队开发的maven工程,需要先使用install命令把被依赖的...③ Site Lifecycle 生成项目报告,站点,发布站点。...pre-site 执行一些需要在生成站点文档之前完成的工作 site 生成项目的站点文档 post-site 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备 site-deploy 将生成的站点文档部署到特定的服务器上
领取专属 10元无门槛券
手把手带您无忧上云