Maven的安装和基本学习

Maven的简单认识

1 简介

maven是一个项目构建(指的是项目创建、编译、运行、测试,打包,部署等整个流程)和jar包管理工具 (jar包依赖,jar包下载,jar包冲突),目的是提高开发效率; Maven是一个基于项目对象模型(POM)的概念的纯java开发的开源的项目管理工具。 主要用来管理java项目,进行依赖管理(jar包管理,能自动分析项目所需的依赖软件包,并到Maven仓库区 下载)和项目构建(项目打包和部署)。 此外还能分块开发,提高开发效率。

一句话总结maven:maven是一个项目构建和jar包管理工具。

2 Maven目标
Maven主要目标是提供给开发人员:

  1. 项目是可重复使用,易维护,更容易理解的一个综合模型。
  2. 插件或交互的工具,这种声明性的模式。

Maven的安装

安装maven之前要先配置好环境变量
maven目录:

bin:含有mvn运行的脚本
boot:含有plexus-classworlds类加载器框架
conf:含有settings.xml配置文件
lib:含有Maven运行时所需要的java类库 LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍

maven官网
下载完解压,注意解压的时候解压目录中不要又中文目录
解压完 之后配置Maven环境变量
电脑右键–>属性–>高级设置–>环境变量
新建一个系统环境变量
变量名:MAVEN_HOME
变量名:maven解压路径
在这里插入图片描述
在path中新建一个%MAVEN_HOME%\bin
在这里插入图片描述
检查是否安装成功win+r输入cmd打开输入mvn -version。
在这里插入图片描述

使用Maven

在idea中创建一个maven项目
file—>setting—>搜索maven更改Maven home directory因为idea会默认使用自己的,不会使用我们安装的maven,所以要修改一下maven路径为自己的安装路径。
在这里插入图片描述
file—>new—>project—>maven如下图所示下一步next:
在这里插入图片描述
会看到如下页面,更改域名和项目名下一步
在这里插入图片描述
更改maven目录为自己的目录
在这里插入图片描述
下一步,finish
在这里插入图片描述
第一次创建项目,选择下面的自动下载

在这里插入图片描述

当出现这个时就说明maven下载好了

在这里插入图片描述

Maven项目说明

src/main/java:存放项目的.java文件
src/main/resources:存放项目资源文件。如Spring,Hibernate配置文件
src/test/java:存放所有测试的.java文件.如Junit测试类 src/test/resources:测试资源文件 target:项目输出位置(可以自动生成) pom.xml(maven项目核心配置文件)

Maven仓库说明

存储jar的仓库(3种仓库)
1.本地仓库:存储在本地磁盘,默认在系统盘c盘 用户名/.m2/xx
通过settings.xml 更改本地仓库localRepository
2.远程仓库:一般都使用国内镜像或者公司自己搭建私服. 一般用Nexus
目的:加快下载速度
私服存在的意义:开发者电脑更新,本地仓库就有jar。目前常用的就是阿里镜像
3.Maven(中央)仓库: Maven团队维护的jar包仓库
一般用这个查POM
检索顺序:先检索本地仓库--再检索远程仓库--最后检索中央仓库
在这里插入图片描述

Maven依赖传递

1.什么是传递依赖?
依赖一个jar包往往会下载相互关联的jar包这就是依赖传递
2.依赖传递出现的问题
依赖传递出现的问题: 经常出现jar包冲突,
解决方案:直接排除指定的jar包
3.Maven常用命令
clean:清空
compile:编译
deploy:上传
test:单元测试
install:添加到本地仓库
tomcat:run 启动tomcat
package:打包

Maven工程添加依赖

之前的导架包是把jar包下载下来导入到项目中。学完maven后,先在在上面的POM网站中查询相应的jar包。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

pom.xml中的配置

dependencies标签:当前项目依赖的所有jar包(所有jar包都写到这个标签中)
dependency标签:当前项目中存在的jar包
groupId:jar包的组织名倒写
artifactId:项目名或者模块名
version:版本号
scope:作用域范围

取值说明:
1.provided:编译和测试时需要
2.complie:编译、测试、运行、打包需要
3、runtime:测试、运行、打包需要
4、test:测试 (junit.jar)
5、system:编译和测试时需要,显示引用,Maven不会检索

以后导jar包就是这样导jar包。

修改maven工程的jdk版本号(两种方式)

方式一:在指定项目的pom.xml中添加如下话语(每个maven project或者maven model都要配置):
org.apache.maven.plugins
maven-compiler-plugin
3.6.0
1.8
UTF-8
方式二:在maven的settings.xml中配置jdk插件(配置一次即可):放在节点下即可

jdk-1.8

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

Maven配置文件(settings.xml)具体说明

1.localRepository:设置本地仓库: <localRepository>C:\software\repository</localRepository> 2.pluginGroups:插件组合 
3.proxies:代理 
4.servers服务器(其中username和password是私服的用户名和密码) 
	<server> 
		<id>user-releases</id> 
		<username>admin</username> 
		<password>admin</password> 
	</server> 
	<server> 
		<id>user-snapshots</id> 
		<username>admin</username>
		<password>admin</password> 
	</server> 
5.mirrors:镜像路径 <!-- 阿里镜像 --> 
	<mirror> 
		<id>alimaven</id> 
		<name>aliyun maven</name>
		<url>http://maven.aliyun.com/nexus/content/groups/public/</url> 
		<mirrorOf>central</mirrorOf> 
	</mirror> 
6.profiles:服务器配置 <!--服务器的配置--> 
	<profile> 
		<id>nexusProfile</id> 
		<repositories> 
			<repository> 
				<id>nexus</id> 
				<name>nexus</name> 
				<url>http://localhost:8081/nexus/content/groups/public/</url> 
				<releases> 
					<enabled>true</enabled> 
				</releases> 
				<snapshots> 
					<enabled>true</enabled> 
				</snapshots> 
			</repository> 
		</repositories> 
		<pluginRepositories> 
			<!-- 插件仓库,maven的运行依赖插件,也需要从私服下载插件 --> 
			<pluginRepository> <!-- 插件仓库的id不允许重复,如果重复后边配置会覆盖前边 --> 
				<id>public</id> 
				<name>Public Repositories</name>
				<url>http://localhost:8081/nexus/content/groups/public/</url> 
			</pluginRepository> 
		</pluginRepositories> 
	</profile> 
	<!-- java编译插件,配jdk的编译版本--> 
	<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> 
7.activeProfiles:激活私服 
	<activeProfiles> 
		<activeProfile>nexusProfile</activeProfile> 
	</activeProfiles>
创建好maven项目

项目创建好后会有一个蓝色包和一个绿色包,蓝色包放Java代码,绿色包放测试代码,这样等以后生成war包时绿色包中代码不会存到war包中。
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值