Maven的一些知识和基本操作

1.简介

  • Maven是一款自动化的构建工具

  • 构建的环节

    • 1)清理

    • 2)编译

    • 3)测试

    • 4)报告

    • 5)打包

    • 6)安装

    • 7)部署

2.安装Maven核心程序

  • 1)保证有JAVA_HOME环境变量

  • 2)将下载好的Maven核心程序apache-maven-3.2.2-bin.zip解压到一个非中文无空格的目录中,并配置M2_HOME环境变量

  • 3)配置成功之后即可在命令行中输入mvn -v查看maven的版本信息

  • 4)在Maven核心程序的conf目录中的settings.xml文件中配置本地仓库

<localRepository>E:\RepMaven</localRepository>

 

3.Maven的核心概念

  • POM

    • Project Object Model:项目对象模型,将Java工程的相关信息封装为对象作为便于操作和管理的模型

  • 坐标

    • 使用如下三个向量在Maven的仓库中唯一确定一个Maven工程

      • 1)groupId:公司或组织的域名倒序+当前项目名称

      • 2)artifactId:当前项目的模块名称

      • 3)version:当前模块的版本

    • 掌握能根据坐标找到本地仓库中的Maven工程,也能通过仓库中的工程写出坐标

  • 依赖管理

    • 依赖的范围

      • 1)test

        • 只有测试程序可以使用

      • 2)provided

        • 主程序和测试程序都可以使用,但是部署到Tomcat服务器上时不会放到WEB-INF目录的lib目录下

      • 3)compile

        • 主程序和测试程序都可以使用,部署到Tomcat服务器上时也会放到WEB-INF目录的lib目录下

    • 依赖的传递性

      • 只有范围是compile时才具有传递性

    • 依赖的原则:解决jar包冲突

      • 1)路径最短者优先

      • 2)路径相同时先声明者优先

    • 统一管理目标jar包的版本

      • 在pom.xml文件的properties标签中自定义一个标签声明jar包的版本,然后在导入jar包中使用${自定义的标签名}获取版本

 

<properties>
    <spring.version>4.1.1.RELEASE</spring.version>
</properties>

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-context</artifactId>
   <version>${spring.version}</version>
</dependency>

 

  • 仓库

    • 1)本地仓库

      • 为当前本机电脑上的所有Maven工程服务

    • 2)远程仓库

      • ①私服

        • 架设在当前局域网环境下,为当前局域网范围内的所有Maven工程服务

      • ②中央仓库

        • 架设在Internet上,为全世界所有Maven工程服务

      • ③中央仓库的镜像

        • 架设在各个大洲,为中央仓库分担流量。减轻中央仓库的压力,同时更快的响应用户请求

    • 仓库中的文件

      • 1)Maven的插件

      • 2)我们自己开发的项目的模块

      • 3)第三方jar包

4.在Eclipse中配置Maven

  • 1)指定Maven核心程序的位置

    • 操作路径:Window→Preferences→Maven→Installations

    • 图解

  • 2)指定Maven核心程序配置文件的位置

    • 操作路径:Window→Preferences→Maven→User Settings

    • 图解

 

  • 掌握如何在Eclipse中创建Maven版的Java工程和Web工程

5.继承

  • 创建一个父工程,打包方式选择pom,并在pom.xml文件中设置依赖管理

<!-- 通过继承管理依赖 -->

    <dependencyManagement>

        <dependencies>

            <dependency>

                <groupId>junit</groupId>

                <artifactId>junit</artifactId>

                <version>4.9</version>

                <scope>test</scope>

            </dependency>

        </dependencies>

    </dependencyManagement>
  • 在子工程的pom.xml文件中通过parent标签配置父工程

<!-- 配置父工程 -->

    <parent>

        <groupId>com.atguigu.maven</groupId>

        <artifactId>Parent</artifactId>

        <version>0.0.1-SNAPSHOT</version>

        <!-- 配置从当前工程出发查询父工程中的pom.xml文件的相对路径 -->

        <relativePath>../Parent/pom.xml</relativePath>

    </parent>

6.聚合

  • 在总的聚合工程中使用modules/module标签组合,指定模块工程的相对路径即可

<!-- 聚合 -->

    <modules>

        <module>../MakeFriend</module>

        <module>../OurFriend</module>

        <module>../HelloFriend</module>

        <module>../Hello</module>

    </modules>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值