返回顶部

idea工具中maven的Lifecycle中各个功能作用详解

IDEA工具中Maven下的各个功能到底有什么作用,平时会使用,但是真正的含义,得探索一下。毕竟不能总是停留在会用的层面~

 

 接下来,让我们一探究竟!

 

mvn clean作用:

翻译:打扫清理,最直接的就是作用于橙色的target目录。在进行真正的构建之前进行一些清理工作,移除所有上一次构建生成的文件(i.e:删除了install生成的所有文件,包括该目录)。执行该命令会删除项目idea路径下的target文件,但是不会删除本地的maven仓库已经生成的jar文件。

清理前:

清理后:

 

mvn validate作用:

翻译:验证。验证工程正确性,所需信息完整否。 但是自己没有实际使用过

————————————————

mvn compile作用:

一般是编译scr/main/java或是scr/test/java里面的文件,主要是java文件

翻译:编译。大伙都知道java的识别文件是.class,编译生成class文件,编译命令,只编译选定的目标,不管之前是否已经编译过,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。与build区别:只编译选定的目标,不管之前是否已经编译过。

 

idea中的build 功能的作用:
————————————————

编译前(清理后):

 

编译后:

 

mvn test作用:

翻译:测试。单元测试。,

但是自己没有实际使用过

————————————————

mvn package作用:

翻译:打包。将工程文件打包为指定的格式,例如JAR,WAR等(看你项目的pom文件,里面的packaging标签就是来指定打包类型的)。这个命令会在你的项目路径下一个target目录,并且拥有compile命令的功,因此能进行编译,同时会在target目录下生成项目的jar/war文件。如果a项目依赖于b项目,打包b项目时,只会打包到b项目下target下,并不会讲依赖放到本地的Maven仓库,因此编译a项目时就会报错,因为找不到所依赖的b项目,说明a项目在本地仓库是没有找到它所依赖的b项目,这时就用到install命令。

打包前:

 

打包后:

 

————————————————

mvn verify作用:

翻译:核实。主要是对package检查是否有效、符合标准。 没有实际使用过

————————————————

 

mvn install作用:

翻译:安装。将包安装至本地仓库(在本地Repository中安装该jar包),以让其它项目依赖。该命令包含了package命令功能,不但,会在项目路径下生成class文件和jar包,同时会在你的本地maven仓库生成jar文件,供其他项目使用(如果没有设置过maven本地仓库,一般在用户/.m2目录下。如果a项目依赖于b项目,那么install b项目时,会在本地仓库同时生成pom文件和jar文件,解决了上面打包package出错的问题)

————————————————

 

mvn site作用:

翻译:站点。生成项目的站点文档。  没有实际使用过

 

————————————————

 

mvn deploy作用:(上传到私服)

翻译:配置部署。复制到远程仓库,也就是将上面mvn install中的jar包推送到远程仓库上去,提供给其他的同事进行拉取使用(共享给其它开发人员和项目),上面mvn install 则是将依赖包放到自己本地的仓库里面,以供自己本地想其他项目使用(如果其他的项目对这个项目有依赖的话)

 

mvn compile与mvn install、mvn deploy的区别

1.mvn compile,编译类文件
2.mvn install,包含mvn compile,mvn package,然后上传到本地仓库
3.mvn deploy,包含mvn install,然后,上传到私服

————————————————

PS:

打包方式主要有JAR和WAR两种

其中JAR用于比较小的项目,好处为不用依赖包,因为他把应用依赖的所有依赖包和程序打包在一个全量包里

其他在idea中的mvn命令

    1. 显示版本信息 :
      mvn -version/-v
    2. 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件 :
      mvn package
    3. 显示详细错误 信息:
      mvn -e
    4. 运行任何检查,验证包是否有效且达到质量标准
      mvn verify
    5. 想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行
      mvn install -X
    6. 打印整个依赖树
      mvn dependency:tree
    7. 在应用程序用使用私服,加如下配置



pom.xml中添加的私服:

<
repositories> <repository> <id>nexus</id> <url>http://172.15.108.19:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </repository> </repositories>

 

作用讲完了,除了这些,还需要关注一下,maven中的私服是怎么搭建的 ?自己在idea中的deploy是怎么推送到目的私服的,有哪些人可以推送到私服,其中都是怎么关联起来的呢 ? 这个请关注下一篇文章的讲解:

 

参考文章:https://blog.csdn.net/weixin_48321825/article/details/126345450   、

 

posted @ 2024-04-11 14:29  fen斗  阅读(444)  评论(0编辑  收藏  举报