where ? why ?what ? maven

  什么是maven?下面是我认知的理解。
  是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。这是一个比较官方的理解。
  当然,我的理解maven是一个依赖管理工具。如果一个项目是maven项目,它会自动去找它到的依赖,并下载到本地,然后自动引用到项目里去,就不用考虑依赖的jar包和版本问题。一个简单的列子:我们现在在使用spring 3.3这个jar包,而这个jar包依赖apache-comons 2.0这个jar包,而apache-comons 2.0依赖javasist 1.5,那么你就不需要自己去找下面这些依赖的jar包,maven会自动去寻找且下载,然后引用到项目。
  maven还可以说是一个构建工具,简而言之从源码到成品的整个过程。这个工具可以定制一套标准的格式,这套格式可以拿来构建。构建的简易过程就是从java源码编译为class文件,然后打成jar包。如果是要打成war包,先把java编译成class文件,放置到一个专门放java的目录,根据场景需求,所有的静态资源一般放置某个目录,如果有jsp,先把jsp编译成servlet,然后在编译成class;在挪至某个位置,然后打包成war包。这就是构建的简易过程。这就是maven的构建。
接下来就是构建的生命周期,步骤:验证>初始化>生成源码>处理源码>生成资源>处理资源>编译>处理类>生成测试源码>处理测试源码>生成测试资源>处理测试资源>测试编译>处理测试代码>测试>打包前准备>打包>前集成测试>集成测试>后集成测试>检验>安装>部署。这是构建的完整步骤。简而言之:默认的生命周期:检验>初始化>编译>测试>打包>集成测试>安装>部署。
什么是坐标?在maven中,它可以定位。在一个maven项目中。有一个文件叫pm.xml,而这个文件有这样几个标签,groupId,artifactId,version,这就是坐标。packaging设置打包的类型。name设置项目名。url官方网站。properties项目的属性。在这对项目属性标签中写项目属性,project.build.sourceEncoding设置项目构建时的字符编码集。dependencies依赖。dependency单元测试工具包。
  一个maven项目,它的目录结构都有一个约定,每位码农都会遵守这个约定。
  └─src                      源码
		  ├─main                 主要的内容
	 		    |     |   ├─java              java源码
			     |    │    	└─com            
			    │    │    		 └─woniuxy
			    │    │         			 └─build  包名
			    │    └─resources         资源: 配置文件
			    └─test                 测试相关
			        └─java
			            └─com
			                └─woniuxy
			                    └─build
			pom.xml
		这就是一个遵守约定的maven项目的约定。
		maven都有一个仓库。本地仓库(local)->私服镜像(aliyun)->中央仓库central
		下面是maven的安装步骤:	
		1:下载maven。
		2:解压至一个位置。
		3:配置maven的环境变量
			M2_HOME
			bin:   %M2_HOME%\bin
		4:测试maven是否成功,在cmd中输入命令:mav  -v。
		5:修改配置:
			 <localRepository>D:\UserData\repo</localRepository>
			 <mirrors>...<mirror>    <id>alimaven</id>    <name>aliyun 		maven</name>    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>    <mirrorOf>central</mirrorOf>        </mirror></mirrors>
		6:简单使用:
			 	mvn archetype:generate -DarchetypeCatalog=internal -DgroupId=com.woniuxy.build -DartifactId=demo,生成一个java se项目
		7:在pom.xml的目录下运行项目
				 mvn clean compile exec:java 				  -Dexec.mainClass="com.woniuxy.build.App" 
		 8:打包
			    mvn package
			 当然,这里只是作者小白对maven毛皮的认知。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值