maven简介与配置

maven

maven是一个项目管理工具,不仅可以把源代码构建为可以发布的项目(包括 编译、打包、测试、分发),还可以生成报告、生成web站点。

一、下载与安装

Maven 官方下载地址:http://maven.apache.org/download.cgi,进入下载页面,找到下载文件

二、配置环境变量

创建MAVEN_HOME写maven根目录

path编辑:%MAVEN_HOME%\bin

注意:当项目比较大时,使用Maven生成项目需要占用大量内存,如果超过Java默认的最大可用内存,则会报java.lang.OutOfMemeoryError。 解决此问题为设置MAVEN_OPTS环境变量,此方法一次设定,一劳永逸,为推荐方法。

MAVEN_OPTS环境变量设置方法:在环境变量中添加一个新变量名为MAVEN_OPTS,值为-Xms128m -Xmx512m(数值可以自定义,Xms为初始内存,即最小内存,Xmx为最大内存)

三、验证

cmd mvn - version

四、maven仓库

在 Maven 的术语中,仓库是一个位置。软件开发中不可避免的需要引入大量的第三方库,这些库所在的位置在Maven中被称为 “仓库” 。 在 Maven 中任何一个依赖、插件或者项目构建的输出,都可以称之为 “构件” 。Maven 仓库能帮助我们管理构件(主要是JAR)。

Maven 仓库有三种类型:

  • 本地仓库(local):顾名思义就是本地本机放置构件的地方。Maven 从远程仓库下载下来的构件都存放在本地仓库中,项目可以从本地 Maven 仓库中获取自己所依赖的文件。
  • 中央仓库(central):Maven 中央仓库是由 Maven 社区提供的仓库,其中包含了大量常用的库。中央仓库是 Maven 官方提供的,可通过 http://search.maven.org/ 来访问。
  • 远程私服(remote):私服一般是指公司内部使用的仓库。运行 Maven 时,Maven 所需要的任何构件都是从本地仓库获取的,但是如果本地仓库没有,它就会尝试从远程仓库中下载构件到本地仓库。如果 Maven 无法连接到远程仓库,将无法正常构建项目。

使用 Maven 给我们带来的最直接的好处就是统一管理 Jar 包。那么这些 Jar 包存放在哪里呢?它们就在你的本地仓库中,默认地址位于 C:\Users\用户名.m2 目录下(当然也可以修改这个默认地址)。

实际上,我们可以将本地仓库理解为 “缓存”,目的是存放 Jar 包。开发项目时首先会从本地仓库中获取 Jar 包,当无法获取指定 Jar 包的时候,本地仓库会从远程仓库(或中央仓库)中下载 Jar 包,并 “缓存” 到本地仓库中以备将来使用。这样一来,本地仓库会随着项目的积累越变越大。

五、本地仓库

Maven 本地仓库默认被创建在 %USER_HOME% 目录下。要修改默认位置,在 %M2_HOME%\conf 目录中的 Maven 的 settings.xml 文件中定义另一个路径。

<settings>
      <localRepository>自定义位置</localRepository>
</settings>
六、中央仓库

Maven 中央仓库是由 Maven 社区提供的仓库,其中包含了大量常用的库。

中央仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等。一般来说,简单的Java项目依赖的构件都可以在这里下载到。

中央仓库由 Maven 社区管理,不需要配置,但需要通过网络才能访问。

七、远程私服仓库

如果 Maven 在中央仓库中也找不到依赖的文件,它会停止构建过程并输出错误信息到控制台。为避免这种情况,Maven 提供了远程仓库的概念,它是开发人员自己定制仓库,包含了所需要的代码库或者其他工程中用到的 Jar 文件。

八、maven依赖搜索顺序

当我们执行 Maven 构建命令时,Maven 开始按照以下顺序查找依赖的库:

步骤 1 - 在本地仓库中搜索,如果找不到,执行步骤 2,如果找到了则执行其他操作。

步骤 2 - 在中央仓库中搜索,如果找不到,并且有一个或多个远程仓库已经设置,则执行步骤 4,如果找到了则下载到本地仓库中以备将来引用。

步骤 3 - 如果远程仓库没有被设置,Maven 将简单的停滞处理并抛出错误(无法找到依赖的文件)。

步骤 4 - 在一个或多个远程仓库中搜索依赖的文件,如果找到则下载到本地仓库以备将来引用,否则 Maven 将停止处理并抛出错误(无法找到依赖的文件)。

九、修改配置

Maven会将下载的类库(Jar 包)放置到本地的一个目录下,如果想重新定义这个目录的位置就需要修改 Maven 本地仓库的配置。需要修改settings文件

<localRepository>D\repository</localRepository>

依据该配置,Maven 就会将下载的类库保存到 D\repository 中。

配置阿里云镜像

<mirror> 
	<id>alimaven</id>
    <name>aliyun maven</name> 											       					<url>http://maven.aliyun.com/nexus/content/groups/public/</url> 								<mirrorOf>central</mirrorOf> 
</mirror>

配置全局编译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>

验证一下我们刚才做的事情是否产生作用,请在控制台中输入:

mvn help:system
mvn archetype:generate -DinteractiveMode=false -DgroupId=org.fkjava -DartifactId=mavenQs -Dpackage=org.fkjava.mavenqs

执行完该命令之后,在 D\repository下面就会多出很多文件,这些文件就是 Maven 从中央仓库下载到本地仓库的文件,Maven 已经开始为我们工作了。

maven创建、构建一个简单的项目

 插件archetype

配置完毕

Maven中的库是个物理概念,存放各种依赖 Jar,而 ClassPath 是个逻辑概念,指定所依赖 Jar 的可见性。

十、maven标准目录
src
	|--main 
		|--java 源代码目录 
		|--resources 资源目录 
	|--test 
		|--java 测试代码目录 
		|--resources 测试资源目录 
	|--target 
		|--classes 编译后的class文件目录 
		|--test-classes 编译后的测试class文件目录 
	pom.xml Maven工程配置文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值