须要jar包时,先到本地仓库中找,没有就从中央仓库去下载到本地仓库。java
中央仓库不少都在国外,下载速度慢。国内的一些公司在本身的服务器上搭建了maven仓库(中央仓库的镜像),供内部人员使用,由于在公司私有的服务器上,因此又叫作私服。web
有的公司把本身的maven分享出来,免费供开发者使用,好比阿里云的maven仓库。tomcat
若是使用了私服,须要jar包时,先到本地仓库中去找,找不到再去私服上找,若是私服上没有,就从中央仓库下载到私服,再从私服下载到本地仓库。服务器
Maven用坐标来惟一标识一个项目、依赖,坐标由三部分组成:maven
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
依赖有3个做用时期:编译时、测试时、正式部署运行时。ide
有的依赖3个时期都要使用,有的依赖只在特定时期使用,可以使用<scope>设置依赖的做用域:测试
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency>
<scope>经常使用的值:阿里云
在cmd下就能够管理项目,先切换到项目的根文件夹:spa
这5个命令表明了项目的生命周期(Lifecycle)。插件
eg、我先将项目打包为jar,以后修改了代码,我执行install时,maven会自动先执行install以前的生命周期命令。
若是只是将以前的jar安装到本地仓库,那我作的修改岂不是无效了?为防止这种状况发生,maven会自动调用以前生命周期的方法,来更新项目。
这就是maven的对项目的自动构建。你执行deploy,编译、测试、打包、安装、部署都给你弄了。
每一个命令都对应一个插件,执行命令实际是调用对应的插件来完成。
maven集成了tomcat插件,咱们直接直接将项目部署到tomcat中:
注意:每次使用tomcat后,须要先点击中止,若是不点中止,直接从新部署、重启tomcat,可能会出现端口占用、内存泄漏的问题。