Maven简介

笔记总结自网易云课堂Maven课程

什么是Maven

Maven是由Apache基金会出品的,使用JAVA编写的开源项目构建和依赖管理工具。我们在构建web工程中,需要进行的操作包括JAVA文件的编译,war包的创建等,对于大型的项目来说,手动管理文件就会变的非常琐碎,并且对于多人合作的项目,管理上也会非常的不方便。在这种环境下,Maven就能派上用场了。

Maven的优点

它依据约定(惯例)优先原则默认限定了我们的目录结构,所以我们从Maven创建的项目结构都大致相同。

并且Maven提供了很好的第三方依赖管理,这些常用的依赖包都能从Maven的远程服务器中获取到,我们只需要进行一些配置就可以了,解决了我们的依赖维护问题。

Maven还提供了一致的项目构建管理方式,将项目管理中的各项操作抽象为生命周期(lifeCycle),生命周期的各项操作都已经定义完成,减少了我们构建项目的工作量。

并且,Maven的插件式架构提供了大量的可重用插件,使用起来方便快捷,对于我们的一些需求,只需要使用现有的插件就可以实现。大多数的IDE对于Maven也有很好的支持。

Maven的安装

Maven的官网提供了详细的下载安装使用说明,详细安装流程请参阅Maven官网

Maven配置

Maven的配置存储在pom.xml文件中,一个项目的配置信息都存储在这个文件中,Maven依据这个文件来进行项目的管理操作。
它的主要结构如下:

<modelVersion>版本号</modelVersion>

<groupId>公司或小组名称,一般使用Java包的命名方式</groupId>
<artifactId>项目标识符,用来区分项目</artifactId>
<version>版本号-SNAPSHOT(开发版标识,用来区分版本)</version>
//以上三个标签被称为Maven的坐标,通过这三个标签可以唯一的定位一个项目
<packaging>war</packaging>//项目类型

<dependencies>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.0.1</version>
        <scope>provided</scope >
    </dependency>
</dependencies>
//以上是依赖包的声明。每一个依赖的声明都需要有Maven坐标来进行定位。

Maven基本命令

mvn archetype:generate//使用模版生成项目
mvn compile//编译代码
mvn test//单元测试
mvn package//打包
mvn deploy//项目部署
mvn site//生成项目相关站点,在线文档
mvn clean//清理
mvn install//安装依赖包到本地仓库

Tomcat插件

我们的项目最终是要通过Tomcat进行运行的,因此,Tomcat和Marven的配合使用就显得尤为重要。Tomcat官方提供了一个Marven插件,使得我们可以从Marven中启动一个Tomcat服务器,来进行项目的调试。

mvn help:describe -Dplugin=tomcat8

常见命令:

mvn tomcat8:run//启动一个嵌入的tomcat实例
mvn tomcat:deploy//发布项目
mvn tomcat:undeploy
    原文作者:普通一般社会人
    原文地址: https://www.jianshu.com/p/d3f9c86e1764
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞