您当前的位置: 首页 >  ide

liaowenxiong

暂无认证

  • 3浏览

    0关注

    1171博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

IntelliJ IDEA中Maven操作窗口的命令详解/Maven命令详解/Maven生命周期命令详解

liaowenxiong 发布时间:2022-04-18 10:12:10 ,浏览量:3

文章目录
  • 生命周期命令简介
  • 命令详解
    • test
    • package
      • 命令演示
    • verify
    • install
      • 将当前项目放到 Maven 的本地仓库中,供其他项目使用
      • 将自己打包或者下载的 jar/war 文件复制到本地仓库中,供其他模块使用
    • site
    • deploy

生命周期命令简介

在 Maven 中,项目构建都是有生命周期的,每个项目拥有三套独立的生命周期,而每套生命周期又包含多个阶段,这些阶段在执行的时候是有固定顺序的,后面的阶段一定要等前面的阶段执行完成后才能被执行。每个阶段都对应着一个执行指令,也叫生命周期命令。所以执行某个生命周期阶段指令时,会将该指令所对应的阶段之前的所有阶段都执行完。

比如 clean 生命周期,它就包含 pre-clean、clean 和 post-clean 三个阶段。用户调用 pre-clean 时,只有 pre-clean 阶段被执行;调用 clean 时,先执行 pre-clean,再执行 clean 阶段;同理,当调用 post-clean 时,Maven 自动先执行 pre-clean、再执行 clean,最后执行 post-clean。

再比如,你执行命令 mvn install,其实就是执行到生命周期中的 install 阶段,那么会将之前的生命周期阶段按顺序完成,所以执行 mvn install 就包含了:构件的验证、初始化、源文件编译、资源文件的处理、测试、打包、集成测试等阶段的执行任务。具体执行的阶段如下:

validate initialize generate-sources process-sources generate-resources process-resources compile process-classes generate-test-sources process-test-sources generate-test-resources process-test-resources test-compile process-test-classes test prepare-package package pre-integration-test integration-test post-integration-test verify install

生命周期详解参阅《Maven项目的生命周期》。

命令详解 test

执行 src/test/java/ 下的junit的测试用例

执行命令如下:

mvn test

执行生命周期阶段 test,底层会去调用绑定的插件来完成测试任务,test 阶段默认会执行什么插件,可以配置。

执行具体指定的测试方法:

mvn test -Dtest=EmployeeDAOJdbcImplTest#testFindAll;

注意:等号 = 前后不允许出现空格。

执行具体指定的测试用例:

mvn test -Dtest=EmployeeDAOJdbcImplTest;

执行多个测试用例可以用逗号分开:

mvn test -Dtest=App2Test,AppTest;
package

将项目打成 war 包或者 jar 包,取决于项目的 pom.xml 中关于项目的打包类型的设置,如下所示: 在这里插入图片描述

命令演示

通过命令终端进入 pom.xml 所在的目录下,然后执行 clear 命令,将目录 target 清除掉:

mvn clear

接着执行打包命令:

mvn package

打包命令执行后,会在项目根目录下自动生成目录文件 target,打开该目录可以看到如下的内容: 在这里插入图片描述

verify install 将当前项目放到 Maven 的本地仓库中,供其他项目使用

在这里插入图片描述

将自己打包或者下载的 jar/war 文件复制到本地仓库中,供其他模块使用

打开终端,切换到 pom.xml 所在目录下,执行下面的命令将 ojdbc-10.2.0.4.0.jar 安装到本地的 Maven 仓库中:

mvn install:install-file -Dfile="D:\Program Files\mvn\ojdbc-10.2.0.4.0.jar" 
-DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar

jar 包的 GAV 信息可以解压 jar 包查看,也可以通过在线资源搜索网站进行查看,例如:https://mvnrepository.com/。

site

在命令终端中,进入 pom.xml 所在的目录(其实就是项目/模块根目录)下,然后执行下面的命令:

[~/documents/IdeaProjects/demo02]$ mvn site
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------------------------------------
[INFO] Building demo02 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-site-plugin:3.9.0:site (default-site) @ demo02 ---
[INFO] configuring report plugin org.apache.maven.plugins:maven-project-info-reports-plugin:3.1.2
[INFO] 15 reports detected for maven-project-info-reports-plugin:3.1.2: ci-management, dependencies, dependency-info, dependency-management, distribution-management, index, issue-management, licenses, mailing-lists, modules, plugin-management, plugins, scm, summary, team
[INFO] Rendering site with default locale English (en)
[WARNING] No project URL defined - decoration links will not be relativized!
[INFO] Rendering content with org.apache.maven.skins:maven-default-skin:jar:1.3 skin.
[INFO] Generating "Dependencies" report  --- maven-project-info-reports-plugin:3.1.2:dependencies
[INFO] Generating "Dependency Information" report --- maven-project-info-reports-plugin:3.1.2:dependency-info
[INFO] Generating "Distribution Management" report --- maven-project-info-reports-plugin:3.1.2:distribution-management
[INFO] Generating "About" report         --- maven-project-info-reports-plugin:3.1.2:index
[INFO] Generating "Plugin Management" report --- maven-project-info-reports-plugin:3.1.2:plugin-management
[INFO] Generating "Plugins" report       --- maven-project-info-reports-plugin:3.1.2:plugins
[INFO] Generating "Summary" report       --- maven-project-info-reports-plugin:3.1.2:summary
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.732 s
[INFO] Finished at: 2022-01-25T21:47:41+08:00
[INFO] ------------------------------------------------------------------------

构建项目说明的站点,构建成功后,你可以在 target 目录下看到如下两个目录文件: 在这里插入图片描述

在这里插入图片描述 执行这个命令需要以下两个插件: 在这里插入图片描述

deploy

将打包的工件发布到远程的服务器,供其他人员下载使用。 将最终版本的包拷贝到远程的 repository,使得其他的开发者或者工程可以共享。

关注
打赏
1661566967
查看更多评论
立即登录/注册

微信扫码登录

0.1261s