maven的概念,配置及如何创建maven项目
首先,介绍一下Maven百度百科中说到,Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。Maven的核心功能便是合理叙述项目之间的依赖关系,通俗点讲,就是通过pom.xml文件的配置获取jar包,而不用手动去添加jar包。A项目的pom.xml示例:为什么通过这三个属...
首先,介绍一下Maven
百度百科中说到,Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。
Maven的核心功能便是合理叙述项目之间的依赖关系,通俗点讲,就是通过pom.xml文件的配置获取jar包,而不用手动去添加jar包。
A项目的pom.xml示例:
为什么通过这三个属性就可以确定一个jar包呢?
加入上面的pom.xml文件属于A项目,那么A项目是一个maven项目,通过上面这三个属性能够找到json对应版本的jar包,那么json-lib项目肯定也是一个maven项目,json-lib的maven项目中的pom.xml文件就会有三个标识符,比如像下图这样,然后别的maven项目就能通过这三个属性来找到json-lib项目的jar包了。所以,在每个创建的maven项目时都会要求写上这三个属性值的。
A项目的这三个属性值:
其次,介绍一下仓库
通过pom.xml的配置就可以获取需要的jar包,这些jar包就放在仓库中。
仓库分为:本地仓库,第三方仓库(私服),中央仓库
1.本地仓库:
maven会将工程需要的jar包从远程中央仓库下载到本机一个目录下,默认为C:\Users\${user.name}\.m2\repository,目录可以修改,下边有介绍;
2.第三方仓库:
第三方仓库,又称为内部中心仓库,也称为私服
私服:一般是由公司自己设立的,只为本公司内部共享使用。它既可以作为公司内部构件协作和存档,也可作为公用类库镜像缓存,减少在外部访问和下载的频率。(使用私服为了减少对中央仓库的访问)
私服可以使用的是局域网,中央仓库必须使用外网
也就是一般公司都会创建这种第三方仓库,保证项目开发时,项目所需用的jar都从该仓库中拿,每个人的版本就都一样。
注意:连接私服,需要单独配置。如果没有配置私服,默认不使用
3.中央仓库:
maven内置远程公共仓库http://repo1.maven.org/maven2,这里放有大量的常用类库,并包含了世界上大部分流行的开源项目构件,以java为主。
工程需要的jar包,提取原则:
优先从本地仓库查找,若本地仓库没有且配置私服的话,从私服查找,若私服没有,从远程中央仓库获取并且下载到本地仓库,下次使用就会从本地仓库获取;
若本地仓库没有且没有配置私服,则从远程中央仓库获取,,,和上述步骤一样。
接下来,介绍一些maven常用的命令
创建项目:mvn archetype:create --创建java和web项目需要的参数不同
编译:mvn compile --src/main/java目录java源码编译生成class (target目录下)
测试:mvn test --src/test/java 目录编译
清理:mvn clean --删除target目录,也就是将class文件等删除
打包:mvn package --生成压缩文件:java项目#jar包;web项目#war包,也是放在target目录下
安装:mvn install --将压缩文件(jar或者war)上传到本地仓库
部署|发布:mvn deploy --将压缩文件上传私服
maven web项目结构
pom.xml 核心配置
src/main/java java源码
src/main/resources java配置
src/main/webapp eclipse web项目中目录
|-- WEB-INF
src/test 测试
target 输出目录
创建maven web项目的命令:
mvn archetype:create -DgroupId=com.wuhao.maven.quickstart
-DartifactId=myWebApp
-DarchetypeArtifactId=maven-archetype-webapp
-Dversion=0.0.1-snapshot
//mvn:核心命令
archetype:create :高一些的maven版本已经弃用create,采用generate
DgroupId:包名
DartifactId:项目名称
DarchetypeArtifactId:表示创建的是web项目
Dversion:版本号
maven java项目结构
pom.xml 核心配置,项目根下
src
main
java java源码目录
resources java配置文件目录
test
java 测试源码目录
resources 测试配置目录
//mvn compile编译后会生成target目录
创建maven java项目的命令:
mvn archetype:create -DgroupId=com.wuhao.maven.quickstart
-DartifactId=simple
-DarchetypeArtifactId=maven-archetype-quickstart
//mvn:核心命令
archetype:create :和maven web项目一样
DgroupId:和maven web项目一样
DartifactId:和maven web项目一样
DarchetypeArtifactId:表示创建的是java项目、
Dversion:可以不用写,会自动生成
最后,配置maven并启动项目
1.下载maven并配置环境变量
2.有些版本的eclipse自带maven:
eclipse安装maven:
第一行是默认的,第三行是下载的maven,二者择一
3.本地maven仓库可以是默认的C盘下的路径C:\Users\username\.m2\repository
也可以自定义maven库的位置,这就需要对下载的maven中的C:\cache\apache-maven-3.5.4\conf\setting.xml做出修改
修改User Settings,会自动生成本地仓库的路径。
注:User settings 和 Global settings的区别:User settings只作用于当前用户;Global settings作用于登录该计算机的所有用户。User settings会覆盖Global settings。
4.导入并运行已有的maven项目,→maven build
在这里,该项目如果用到数据库,一定要配置数据库信息,否则项目启动不成功!!!!!在这里耽误了很久!!!!!!
更多推荐
所有评论(0)