maven 使用总结2023
maven 使用总结 2023
一.maven:是用于管理和构建java项目的工具.
二.作用:
1.方便的依赖管理:手动导入jar包-->创建maven项目在pom.xml文件配置依赖名称及版本自动下载
2.统一的项目结构:eclipse,myeclipse,intellij IDEA等不同工具创建的项目结构不同不能相互打开,但是maven创建的项目结构统一,不同开发工具导入就可以
3.友好的项目构建:清理,编译,测试,打包,发布
三.maven创建的项目结构:
src:
main
java
resources
test
java
resource
pom.xml
pom.xml
项目对象模型
依赖对象模型
https://repo1.maven.org/maven2/ 中央仓库
https://mvnrepository.com/ 外网依赖库
本地maven仓库:D:\install\mavenRepository
中央maven仓库https://repo1.maven.org/maven2/
私服maven仓库:公司自己搭建的,用这个工具搭建:Sonatype Nexus Repository Manager
<mirrors>
<mirror>
<id>nexus-mirror</id>
<name>nexus-mirror</name>
<url>http://maven.company.com:8088/repository/maven-public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
四.安装maven:
1.下载--解压:apache-maven-3.6.1-bin.zip;
2.配置本地仓库:修改conf/settings.xml中的
3.配置阿里云私服:修改conf/setting.xml中的
<mirror>
<id>alimaven</id>
<name>aliyun maven></name>
<url>http://maven.aliyun.com/nexus/content/groups/public></url>
<mirrorOf><central</mirrorOf>
</mirror>
4.配置环境变量:MAVEN_HOME为maven的解压目录,并将其bin目录加入path环境变量,便于在任意目录访问。
5.测试是否安装成功:cmd mvn -v
备注:maven 是基于jdk的,需先安装jdk
五.IDEA集成maven
1.配置maven环境
2.创建maven项目
3.导入maven项目
maven坐标:是资源的唯一标识,定位 资源位置,使用坐标来引入项目的依赖。
<groupId>com.test</groupId> #组织名
<artifactId>maven-project01</artifactId> #模块名
<version>1.0-SNAPSHOT</version> #版本号
六.IEDA项目添加依赖
pom.xml 配置依赖:没有可以去外网网站查找依赖,并将坐标复制贴到pom.xml 更新依赖。刷新
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.10</version>
https://repo1.maven.org/maven2/ 中央仓库
https://mvnrepository.com/ 外网依赖库
七. 依赖传递:排除依赖:直接依赖,间接依赖
依赖配置
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.10</version>
</dependency>
排除依赖:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.10</version>
<!--排除依赖:不需要制定版本,写好配置后刷新-->
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
八.依赖范围,生命周期
依赖的jar包,默认在主程序,测试程序,打包 都可以使用,可以通过
<scope>compile</scope>默认 log4j
<scope>test</scope> 测试程序 junit
<scope>provided</scope>主程序,测试程序
<scope>runtime</scope>测试程序,打包 jdbc
maven生命周期:为了对所有maven项目构建过程进行抽象和统一。
有3套独立的生命周期:都是由插件完成的
clean:清理工作,字节 移除上一次构建生成的文件
default:核心工作,编译项目源代码,使用合适的单元测试框架运行测试,将编译后的文件打包jar,安装项目到本地仓库,部署等.
site:生产报告,发布站点等.
https://repo1.maven.org/maven2/ 中央仓库
https://mvnrepository.com/ 外网依赖库