目录
一、Maven的介绍
在目前的公司中,java项目几乎所有项目都是使用Maven
跟这个软件非常相似的有:gradle [即将流行]、ant [已经过时]
Maven--内行,专家的意思,Maven的两大作用:依赖管理和项目构建。
大白话讲:
依赖管理--管理Jar包。
项目构建--帮我们创建项目,运行项目,测试项目,编译项目,打包项目。一个项目一般都经历从出生到上线这样一个过程,我们的Maven帮助我们简化步骤。
mavan是学命令的。
负责上线的同事:编写了一个脚本文件,可以自动的识别本次大家更改的代码,并且自动抽取出来,创建对应的文件夹,并且可以自动上传至服务器,重启服务。使用Ant工具编写的脚本。
Ant能够完成的事情,其实就是项目构建。已经属于一个老的技术了。目前比较流行的是Maven
二、Maven的安装
第一步:解压到一个没有中文和空格的一个目录下
第二步:检查你的Java环境是否可以使用
因为Maven的运行需要依赖java环境。
第三步:配置Maven路径
修改path路径:
最后一步:验证配置是否生效 ,新打开一个黑窗口,输入 mvn -v 看到有版本号信息,就说明正常。
三、关于Maven的仓库
maven作为一个管理jar包的工具,jar包需要下载并存放到某个地方,这里面有由三个仓库。
本地仓库是可以拷贝的。
我们目前作为一个新入门的人,本地仓库一个jar包都没有,所以我们需要去互联网上下载,但是互联网上的地址是一个国外的地址,默认下载速度非常的慢,所以我们需要将地址修改为国内的地址--阿里云的maven 仓库地址。
学习如何配置:
1、如何修改本地仓库地址
在你需要指定的地方创建一个文件夹,名字maven_repository
D:\tool\maven_repository
打开你的settings.xml文件夹,找到如下的地方:
本地仓库默认存放的位置:
<localRepository>D:\repository</localRepository>
2、将远程仓库地址,修改为阿里云 settings.xml 中 mirrors 标签内复制如下代码即可
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
假如你们公司要是搭建了私服怎么办?
也可以配置一个jdk的版本(选做):
<profile>
<id>development</id>
<activation>
<jdk>1.8</jdk>
<activeByDefault>true</activeByDefault>
</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>
四、idea如何和本地的maven进行关联呢?
第一步:
第二步:settings
第三步:配置other settings
settings配置的是当前的项目,对以后新建的项目不起作用,但是我们希望以后新建的项目都使用我们本地的maven以及maven仓库,就需要配置other settings
五、使用idea如何新建Maven项目
以上的方式是使用骨架帮我们创建java项目,创建成功以后,pom.xml中以及项目中会自带一些内容,可以酌情删除,比如pom.xml可以只保留如下部分。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- g a v 项目的坐标-->
<groupId>com.bigdata</groupId>
<artifactId>MavenDemo</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!--编写一个jar包的坐标,这个jar包就会被这个项目引用-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
</dependencies>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>
接着演示,如何在项目中导入一个jar包?
在https://mvnrepository.com/ 搜索你想导入的jar包的名称,比如mysql
可以在项目中的pom.xml 中将需要的jar包通过坐标的形式,一个个全部粘贴进来
<dependencies>
<!--编写一个jar包的坐标,这个jar包就会被这个项目引用-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.24</version>
</dependency>
</dependencies>
担心的问题:我怎么知道我想要的jar包坐标是什么?
一般在企业中,没有一个项目是说让你从头到尾把这个项目中需要的坐标一个个找出来的,都是别人给的pom.xml
我们引入的包下载到了哪里?