Maven

概述

  1. Maven是基于java平台的项目构建,依赖管理和项目信息管理,是跨平台的项目管理工具
  2. 通俗点讲Maven就是帮助我们寻找需要的jar包的,我们不再去各大网站去下载
  3. 只需只需要通过Maven的坐标在Maven仓库取即可找到并自动下载导入到项目工具库中

Maven官网

下载Maven

http://maven.apache.org/download.cgi 选择类型 apache-maven-3.6.3-bin.zip

Maven官网插件

http://maven.apache.org的plugins

在线文档

http://maven.apache.org
首页下的index(category)的The Dependency Mechanism的Dependency Scope

优点

  1. Jar管理起来更加轻松,已经被业界广泛采用,springboot就是maven的延伸
  2. 部分包因为版本问题,需要手工导入
  3. 引发新的问题,版本冲突:大型项目中jar中依赖其它jar包
  4. 坐标体系使不同厂商的文件也井然有序,不会冲突覆盖
  5. 生命周期对应命令,使一键做完以前手动的n步事情

缺点

  1. 下载异常让初学者手足无措,不得不删掉仓库重新下就好了,为什么好了,不知道
  2. 版本冲突:大型项目中jar中依赖其它jar包,会发生你调3.1,我调3.2,导致版本冲突问题(maven采用就近原则)
  3. 本地仓库日积月累巨大,很多低版本的jar已经无用,或者过气的技术的jar
  4. 大型项目中jar冲突非常厉害,仍需手动排除,而且实现方式很多,没有统一规则。而springboot完美解决这一个问题

Maven三大仓库

远程仓库

建立在国外服务器的网站上,供全球java开发人员使用!(也叫中央仓库)

镜像仓库

由于远程仓库需要访问到国外,所有人去访问一个中央仓库下载,中央仓库压力山大!于是全球各地做镜像仓库,在空闲时访问远程仓库下载更新好。用的时候即可访问镜像仓库下载jar包

本地仓库

由于我们每次需要jar包,都要去远程仓库下载且没网又无法访问。于是出现了本地仓库
本地仓库会把之前下载过的jar通过坐标存储在本地磁盘中,下载在使用时无需下载

配置Maven

1. 官网
下载地址:http://maven.apache.org/download.html
插件地址:http://maven.apache.org的plugins
在线文档:http://maven.apache.org的index(category)的The Dependency Mechanism的Dependency Scope

2. 配置仓库

打开下载到的Maven文件夹下conf\settings.xml 全局配置文件

 1. <mirrors>标签内配置<mirror>标签:配置国内镜像仓库
 2. <localRepository>本地路径</localRepository>
 3. <profiles>下修改jdk的默认版本号
 4. <profile> - <activation> - <jdk> 修改版本
 5. Maven\lib\maven-model-builder-3.6.3.jar\org\apache\maven\model\pom-4.0.0.xml 可设置远程仓库的一般不改

阿里云的镜像仓库地址

# 一旦配置仓库镜像,针对原仓库的访问都会转到镜像仓库,原仓库将不能直接访问
<mirror>
		<id>ali</id>
		<name>ali Maven</name>
		<mirrorOf>*</mirrorOf>
		<url>https://maven.aliyun.com/repository/public/</url>
</mirror>

4. eclipse 集成 maven

  1. eclipse进入设置(window - preferences),选中Maven项
  2. 将"Download Artifact Sources"打钩,下载jar包的同时会自动下载器源码
  3. eclipse 默认继承maven但据说有问题,打开Maven项选择Installations
  4. 点击add设置 Installation home:Maven安装路径配置后点Finish
  5. 勾选新增的Maven保存
  6. 打开User Settings配置Global settings,Local Repository自动更新

5. IDEA集成 maven

  1. 打开File - Settings - Build, Execution, Deployment - Build Tools - 点击Maven
  2. 设置Maven home directory:maven安装的路径
  3. User settings file:设置settings 配置文件(记得勾选Override)
  4. Local repository:将自动配置

6.Maven目录结构

  • –src/main/java --存正确的java代码
  • –src/main/resources --存资源文件
  • –src/test/java --存要测试的java代码
  • –pom.xml --添加jar包的依赖的坐标

maven添加依赖

什么是依赖呢?
依赖也就是项目必须依赖外部某些jar包才可以运行,把着个jar包看作依赖

如何找到依赖?
依赖通过以下三个节点,可以让maven自动下载并导入项目

  1. groupId:是maven的坐标,指定了jar的组ID,一般是公司名倒着写。(本地仓库中的第一层文件夹)
  2. artifactId:项目ID(也叫模块ID),一般都为项目的名字
  3. version:当前项目的版本号

如何添加依赖
在Maven项目中打开pom文件,里面找到dependencies节点在内部添加类似如下依赖

	<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

如何可以找依赖?
可以通过maven中央仓库查找需要jar包的关键字即可找到相关依赖

Maven常用的命令

命令解释
clean清理Target文件目录,但不会清理Maven本地仓库内对应的数据
compile编译程序,把 .java文件转换成 .class
validate验证代码是否有错误
test测试
site站点文档
package把项目打包成 jar、war(将程序打包,存在target目录下)
deploy部署到私服(打包、本地库、远程仓库)
install安装jar到本地仓库中(打包并存储在本地库)
run运行

每个周期中运行一个命令时,在这个周期里的其他在该命令之前的phase步骤都会执行
这意味着一下执行了很多的命令,也称为一键部署,而这过程都是全自动的

Maven的生命周期

运行顺序: 清理 , 编译 , 测试 , 打包 , 继承测试 , 验证 , 部署

Maven定义3套相互独立生命周期:
clean   				# 清理项目
default   				# 构建项目
site					# 生成项目的站点

三套生命周期运行时相互独立的,且后面的阶段依赖前面的阶段;
例如:运行package进行打包, 分别会执行 compile,test 是依次执行的

clean 清理项目的3个阶段
pre-clean						#执行清理前的操作
clean							#清理上一次构建生成的文件
post-clean						#执行清理后的文件
default构建项目的生命周期(最核心的)
compile						#编译
test						#测试
package						#打包
install						#组装
site生成站点的生命周期(会根据pom配置的信息自动生成一些站点)
pre-site					#在生成项目站点前做的工作
site						#生成项目站点文档
post-site					#在生成项目站点后要完成的工作
site-deploy					#发布生成的站点到服务器上

Maven报错常见问题

1. Spring Boot 新建项目pom.xml文件报错 Failure to transfer org.springframework.boot:spring-boot-maven-plugin
删除.m2\repository中后缀名为lastUpdated的文件

2. 刷新Maven JDK就变成JDK1.5的修改方式
方法1: 配置Maven / settings.xml添加一下代码

<profile>
    <id>jdk-1.8</id>
    <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
    </activation>
    <properties>    				
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
</profile>

方法2: 在项目中添加

<properties>    				
   <maven.compiler.source>1.8</maven.compiler.source>
   <maven.compiler.target>1.8</maven.compiler.target>
   <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>

3.Eclipse Maven的配置文件不提示的处理方法
Eclipse - Help - Eclipse Marketplace
安装spring tools
在需要编写配置的文件右击 Open With
用spring properties editor编辑器打开对应文档

4. Maven项目时修改自带jdk的版本
settings.xml修改: -- 修改版本

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值