Maven介绍:
Maven是项目对象模型(POM),是一个项目模块管工具。能很好的管理模块化开发、模块jar包的分享,并且可以自动下载工程所需要的依赖包。
在开发的过程中我们需要一些可重用的代码来加快开发的速度,因为总不可能一些通用的代码每次都需要自己编写吧,那样的话效率很低,或许我们可以将这些类复制到别的开发工具中使用,但是一两个类还好说,如果有几十个类该如何复制,而且用复制这种方式的话代码也容易被修改或删除。
在早期没有Maven的时候,有一种方式是将可重用的代码打包成jar包,然后用导jar包的方式来将这些可重用的代码模块在不同的【学Java,到凯哥学堂kaige123.com】开发工具上使用。所以这就有一个问题:如果需要导入很多个jar包怎么办?使用的jar包有依赖包怎么办?jar包的代码要进行升级怎么办?
Maven的出现解决了这三个“怎么办”,Maven能够帮助开发人员自动在中央类库上下载依赖包,能够自动批量下载并导入jar包,代码需要进行升级的话只需要更改一下工程的核心配置文件就可以直接发布了,发布后其他用户就可以直接通过Maven的中央类库下载,所以Maven就是帮助我们进行模块化开发的,能够加快开发速度和构建工程环境、管理模块减轻开发人员的压力。Maven的中央类库是国际性的,全世界都可以从中央类库上下载自己所需要的jar包。
Maven在下载依赖的包时,会先寻找本地类库有没有,如果没有本地类库就会去企业类库里找,企业类库里还是没有的话,才到中央类库上找,在中央类库上找到后会先保存一份在企业类库,然后再保存一份到本地类库,最后才到达你的项目工程里,所以第一次下载包会慢一些,但是第二次再使用这个包的时候就可以直接在本地类库或者企业类库中寻找到了,而且在公司里其他的开发的人员都可以直接在企业类库中下载需要的包,所以企业类库也起到一个缓存的作用。
示意图:
Maven的中央类库不止一个,有很多个,最常用的是mvnrepository库:
mvnrepository地址:
https://mvnrepository.com/
Maven工具官网下载地址:
http://maven.apache.org/download.cgi
Maven的配置:
下载好后需要配置一下系统的环境变量,先新建一个环境变量MAVEN_HOME,然后把Maven的bin目录所在的路径粘贴上去,接着把bin目录路径添加到PATH路径里:
1.新建MAVEN_HOME:
2.把bin目录路径添加到PATH路径里:
接着更改Maven的本地库:
自定义配置好本地库,之后Maven下载的jar包都会在这个文件夹下。
配置中央类库(有需要的才配置,没需要的默认即可无需配置):
然后自己根据自己的需求更改网络地址即可,一般没啥需求的话使用默认的就行了 :
在Eclipse中配置Maven的本地库:
先在Eclipse的菜单栏中点击Window然后点击Preferences进入以下界面:
Maven在Eclipse上就配置好了。
接下来打开cmd输入mvn help:system命令,此命令会下载一些系统相关的包:
下载完成:
现在就可以在Eclipse上使用Maven构建项目工程了,使用快捷键Ctrl+n进入以下界面:
点击下一步后会进入Maven提供的工程模板选择界面,当然自己也可以构建自己的工程模板:
如果不想使用这些模板就返回上一步,勾选跳过模板:
上图的进一步说明:
Group Id:工程组的id,这个id必须是全球唯一的,所以最好使用域名作为id,因为这 个id是你工程的唯一识别id,别人下载你的工程包的时候,是根据这个id来下载的, 如果与别人的工程id重名会导致混乱。
Artifact Id:项目名称和模块名称,如果有子模块或功能就写在后面。
Version:表示这个工程的版本,一般创建的时候都是0.0.1的实验版本。
Packaging:选择工程的包:jar是普通java工程,pom是文件创建,war包是web工程。
Name:工程名字。
Description:工程的介绍或说明。
Parent Project:父工程信息,有需要则填写无需要可以不填写。
创建完成,创建的时候会下载一些所需要的文件,等待一下即可:
打开配置文件可以查看到工程的一些基本信息:
试一下在中央库中下载包:
例如我要下载Hibernate相关的包,在中央库的网站搜索一下,然后点击一个进去,然后选择自己需要的版本:
如果把配置文件中的依赖删掉的话,下载的包也会移除,不过并不会删掉,会保存在本地库中,下次使用的时候就会在本地库中找。
共享工程jar给别人使用:
首先要将工程安装到【学Java,到凯哥学堂kaige123.com】本地库,右键配置文件,选择Run As,接着选择Maven install就会开始发布到本地库了。
发布完成:
接着打开配置文件:
复制到另一个开发工具工程的配置文件中:
如果下载的包有依赖包的话会自动下载依赖的包,版本升级的话只需要更改一下版本数字即可:
然后保存一下,同样的点击配置文件的Maven install发布到本地库中。
另一个开发工具的用户只需要更改一下版本号,接着保存就会自动下载:
Maven的初步使用就完成了,可以看得出Maven这个工具能够很方便的管理、发布、下载模块或jar包。