美文网首页
Maven整理

Maven整理

作者: 柳叁叁 | 来源:发表于2018-12-28 00:08 被阅读0次

maven是一个项目管理工具

每一个工程都通过POM文件来定义maven的配置,每一个插件也有对应的配置文件。

maven生命周期由各个阶段组成,可以理解成由各种plugin按照一定的顺序执行来完成java项目整个流程,生命周期主要包括clean、resources、compile、testResources、testCompile、test、package、install、deploy。生命周期的各个阶段不是独立的,可以单独执行,也可以一起执行。

clean插件

clean阶段是一个独立的阶段,功能是清除工程中的target目录。

resource插件

resource的功能是把项目需要的配置文件拷贝到指定的目录当中去,默认是拷贝src/main/resources目录下的文件到classes目录下,也可以自己配置输入和输出目录,此插件一般不单独执行,compile插件执行时会先调用resource插件。

compiler插件

compiler插件执行时先调用resources插件,然后将java源码编译成字节码生成class文件,并把编译好的文件输出到target/classes目录下。

单元测试插件

单元测试需要用到resource和compiler插件将test文件编译并输出到target/test-classes里,surefire插件是执行单元测试类的,如果测试不通过,build就会失败,可与i通过-DskipTests来跳过测试过程。mvn test可以单独执行,其实包括了resources、compiler、testResources、testCompile、test几个阶段。

打包插件

此插件是把class文件、配置文件打成一个jar包(或war包等)。依赖包是不在jar里的,需要建立lib目录,且jar和lib在同级目录。常用的打包插件有jar、assembly和shade。
执行package命令可以完成项目编译、单元测试、打包功能。

×JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 JAR 文件)。
JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。

一个WAR文件就是一个Web应用程序,建立WAR文件,就是把整个Web应用程序(不包括Web应用程序层次结构的根目录)压缩起来,指定一个.war扩展名。下面我们将第2章的Web应用程序打包成WAR文件,然后发布
要注意的是,虽然WAR文件和JAR文件的文件格式是一样的,并且都是使用jar命令来创建,但就其应用来说,WAR文件和JAR文件是有根本区别的。JAR文件的目的是把类和相关的资源封装到压缩的归档文件中,而对于WAR文件来说,一个WAR文件代表了一个Web应用程序,它可以包含 Servlet、HTML页面、Java类、图像文件,以及组成Web应用程序的其他资源,而不仅仅是类的归档文件。

install和deploy插件

install是把构建好的artifact部署到本地仓库,deploy是把构建好的artifact部署到远程仓库。

一些额外总结:

1、可将maven的settings文件中的快照更新策略(update policy)修改为never,避免不必要的麻烦。
2、当遇到无法找到包、依赖出问题等等问题时,应有解决思路,可参考https://825635381.iteye.com/blog/2374699

其他文献:
https://blog.csdn.net/qq_16605855/article/details/79726278

相关文章

  • Maven整理

    maven是一个项目管理工具 每一个工程都通过POM文件来定义maven的配置,每一个插件也有对应的配置文件。 m...

  • Maven知识整理

    https://mp.weixin.qq.com/s/1mzqDkHmyur2fbvDwpdRCA Maven是一...

  • maven学习整理

    1. 什么是maven 翻译为“专家”,“内行” Maven是跨平台的项目管理工具。主要服务于基于Java平台的项...

  • Maven 相关整理

    文前说明作为码农中的一员,需要不断的学习,我工作之余将一些分析总结和学习笔记写成博客与大家一起交流,也希望采用这种...

  • Maven用法整理

    1.继承 当被继承项目与继承项目的目录结构是父子关系的时候,写法如下 被继承项目与继承项目的目录结构不是父子关系的...

  • maven 学习整理

    maven: 1. 常用命令 a) compile 就是编译项目,一般不用,ide都自带b) ...

  • Mava 知识总结

    我把Maven整理了下进行分享。 一、初识Maven Maven是Apache组织中的一个很成功的开源项目,Mav...

  • Maven依赖中scope的含义

    Maven依赖中scope的含义 整理一下Maven中Scope的详细作用,都是抄的别人内容整理了一下。参考:ht...

  • Maven依赖中scope的含义

    Maven依赖中scope的含义 整理一下Maven中Scope的详细作用,都是抄的别人内容整理了一下。参考:ht...

  • Maven笔记整理-基础

    概述 Maven是什么 Maven是一个优秀的项目构建工具 Maven提供了契约式的开发 为什么使用Maven 它...

网友评论

      本文标题:Maven整理

      本文链接:https://www.haomeiwen.com/subject/uxbdlqtx.html