目录
3.2、配置优先让idea中的maven项目到本地仓库找依赖
一、环境配置
maven配置-MAVEN_HOME
1.在系统环境变量中添加变量
2.在path中配置查找maven_home的值
3.验证是否配置成功
二、maven仓库
2.1、配置本地仓库
在你的计算机上任意位置创建文件夹,文件夹名建议是repository,位置建议在你的maven路径下
在maven的配置文件settings.xml中进行将上述的本地仓库路径进行配置
例:<localRepository>D:\MySoft\maven\apache-maven-3.3.9\repository</localRepository>
2.2、远程仓库的配置
将如下内容放到settings.xml文件中即可:
注意:私服只能配置一个,否则会产生下载依赖冲突导致下载出现问题。
传智:
<mirror>
<id>my</id>
<mirrorOf>*</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://192.168.50.187:8081/repository/maven-public/</url>
</mirror>
阿里云:需要连接外网
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
三、maven工程
3.1、关联maven
3.2、配置优先让idea中的maven项目到本地仓库找依赖
这里配置完就会优先到本地仓库找依赖。
-DarchetypeCatalog=internal
3.3、web工程
打成war包
说明:
- 普通java工程打成.jar包
- web工程打成.war
- 生成的包都是放到target目录下
- 执行打包命令的时候也会执行测试方法
四、maven应用详解(pom依赖)
4.1、pom.xml 配置详解
pom(Project Object Model)指的是项目对象模型,用来描述当前的maven项目。使用pom.xml文件来实现。
<!--project表示pom.xml文件的根标签,表示项目-->
<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>
<!--
以下内容称为maven中导入的依赖的坐标,包含三个内容:
1.groupId:文本中表示项目的组名
2.artifactId:表示项目名
3.version:项目版本。表示第几次修改。
如果大的修改2.0 3.0
比较少的修改:3.1 3.2
极少修改:3.2.1 3.2.2 3.2.3
说明:通过坐标来决定一个项目的位置。
-->
<groupId>com</groupId>
<artifactId>myMaven</artifactId>
<version>1.0-SNAPSHOT</version>
<!--将web工程打成war包-->
<!--packaging表示项目打包方式-->
<packaging>war</packaging>
</project>
4.2、依赖管理【重点】
4.2.1 测试导入c3p0
<!--需求:导入c3p0-->
<dependencies>
<!--
在pom.xml导入本地仓库的依赖有两种方式:
1.在dependencies文本中按快捷键:alt+insert
2.在dependencies文本中直接输入dependency的标签
-->
<!-- <dependency>
<groupId>依赖组名</groupId>
<artifactId>依赖项目名</artifactId>
<version>版本</version>
</dependency>-->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
</dependencies>
4.2.2 导入远程仓库
1)导入阿里云
地址:仓库服务
导入结果:
2)在中央仓库中查找依赖
中央仓库地址:http://mvnrepository.com/
4.3、依赖配置(重点)
4.3.1 依赖使用范围
maven包括3套运行环境:
- 编译环境:书写完的java代码要进行编译,称为编译环境。
- 测试环境:表示运行test目录下的内容需要的哪些依赖。
- 线上环境:tomcat运行项目时的环境需要哪些依赖。
依赖范围有五种配置:
4.3.2 依赖版本维护
若pom文件中引入的依赖太多,各种依赖又有不同的版本,为了统一维护版本。我们可以将依赖的版本号抽取出来进行统一管理。
【1】第一步 :在pom.xml中使用<propeties>属性定义jar包的版本
<!--第一步 :在pom.xml中使用<propeties>属性定义jar包的版本
说明:properties中的子标签随便定义,建议满足规范:依赖名.version
-->
<properties>
<c3p0.version>0.9.1.2</c3p0.version>
<druid.version>1.1.9</druid.version>
<junit.version>4.12</junit.version>
</properties>
【2】 第二步 :在依赖的<version>中使用${}引入前面定义好的版本
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<!-- 第二步 :在依赖的<version>中使用${}引入前面定义好的版本-->
<version>${c3p0.version}</version>
<!--配置依赖的范围:c3p0这个依赖存在编译 测试 和运行的环境中-->
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>;druid-spring-boot-starter</artifactId>
<!-- 第二步 :在依赖的<version>中使用${}引入前面定义好的版本-->
<!--<version>1.1.9</version>-->
<version>${druid.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<!-- 第二步 :在依赖的<version>中使用${}引入前面定义好的版本-->
<!--<version>4.10</version>-->
<version>${junit.version}</version>
<!--导入junit依赖:该依赖只需要存在于测试环境,不需要存在于编译(main/java下面的类)和运行环境-->
<!--
依赖范围是test表示junit的jarb包只存在于test环境下
-->
<scope>test</scope>
</dependency>