maven基础教程

何为maven

是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的。

maven有哪些优点

优点如下:

  1. 依赖管理 ,项目中的jar包由仓库来管理,和传统项目比起来maven项目所占空间更小;
  2. 项目一键构建,清理clean、编译compile、测试(junit)、运行、打包package、部署只需一个命令即可;比如一个tomcat:run就可以启动项目;
  3. 支持跨平台
  4. 应用于大型项目,可以提高开发效率,举个例子:用户管理、订单管理、支付管理等等,Maven的分模块开发,场景–互联网项目可以按业务分,而传统项目可以按层分,比如entity、dao、service、web;

maven下载与安装

链接: 地址,可根据版本自行下载.

  1. 下载完成后并将其解压
    bin目录mvn.bat(以run方式运行项目)、mvnDebug.bat(以debug方式运行项目),boot目录maven运行需要类加载器,conf目录settings.xml是整个maven工具核心配置文件,lib目录maven运行依赖jar包
    解压目录如下:
    解压目录
  2. 配置环境变量
    jdk1.7+以上,MAVEN_HOME指向maven解压的目录,然后将%MAVEN_HOME%/bin加入环境变量path中,可以通过mvn - v命令来查看maven是否安装成功
    maven版本查询如下:
    maven版本查询

maven仓库

maven仓库的作用

maven项目会通过maven软件从远程仓库(公司私服)下载jar包并存到本地仓库,当第二次需要此jar包时则不再从远程仓库下载,因为本地仓库里已存在jar了,有了本地仓库就不用每次从远程仓库下载了。
3. 本地仓库:用来存储从远程仓库或中央仓库下载的插件和jar包,项目使用的插件和jar包,优先从本地仓库查找。默认本地仓库位置在 u s e r . d i r / . m 2 / r e p o s i t o r y , {user.dir}/.m2/repository, user.dir/.m2/repository,{user.dir}表示windows用户目录。可以在conf中的setting.xml设置本地仓库地址,如下图
本地仓库配置路径
4. 远程仓库:如果本地需要插件或者jar包,本地仓库没有,就默认去远程仓库下载,远程仓库可以在互联网内也可以在局域网内
5. 中央仓库:在maven软件中内置一个远程仓库地址http://repo1.maven.org/maven2,它是中央仓库,服务于整个互联网,它是由maven团队自己维护,里面存储非常全的jar包,它包含了世界上大部分流行的开源项目构件。

maven在eclipse中的配置

  1. eclipse中配置使用的maven的setting.xml文件,使用maven安装目录下的setting.xml文件,如果修改了setting.xml文件需要点击上图中的update settings按钮对本地仓库重建索引,点击Reindex,如下图:setting设置

eclipse浏览仓库

  1. 找到local respository本地仓库项,点击Rebuild index重建索引,操作如下图
    图1图2

定义maven坐标

下面展示一些 内联代码片

	<!--项目名称,定义为组织名+项目名,类似包名-->
	<groupId>com.aaa.xxx</groupId>
	<!--模块名称-->
	<artifactId>spring-cloud</artifactId>
	<!--当前项目版本号,比如0.0.1-SNAPSHOT,snapshot为快照版本即非正式版本,1.5.13.RELEASE,release为正式发布版本-->
	<version>0.0.1-SNAPSHOT</version>
	<!--打包类型,jar:执行package会打成jar包,war:执行package会打成war包,pom:用于maven工程的继承,通常父工程设置为pom-->
	<packaging>pom</packaging>

eclipse中创建maven项目

  1. 选择Maven Project创建项目
  2. 选择跳过骨架,如果不跳过骨架,创建的maven工程目录不全,这里跳过骨架创建
  3. 当我们不跳过骨架点击next会进入骨架选择页面,若ecplise中配置本地仓库正确则显示骨架图片
  4. 选择webapp会创建一个maven工程(java web工程),选择quickstart会创建一个maven工程(java工程),使用骨架的问题是创建的maven工程目录不完整,所以不推荐使用
  5. 定义坐标坐标
  6. 使用maven插件来设置编译版本
<plugins>
   	<plugin>
   		<groupId>org.apache.maven.plugins</groupId>
   		<artifactId>maven-compiler-plugin</artifactId>
   		<configuration>
   			<source>1.7</source>
   			<target>1.7</target>
   		</configuration>
   	</plugin>
</plugins>	

maven项目的依赖范围

  1. compile、provided、runtime、test、system
    依赖范围scope
    依赖范围由强到弱的顺序是:compile>provided>runtime>test,比如添加jsp/servlet依赖,为了防止和tomcat下的jar包冲突
<dependency>
   	<groupId>javax.servlet</groupId>
   	<artifactId>servlet-api</artifactId>
   	<version>2.5</version>
   	<scope>proided</scope>
   </dependency>
```;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值