实验一:根据坐标创建Maven工程
1、Maven核心概念:坐标
在数学中我们使用x、y、z三个“向量”作为空间坐标系,可以在三维空间中唯一的定位到一个点。
Maven中的坐标:
1.1、向量说明
使用三个向量在Maven的仓库中唯一的定位到一个jar包。
- groupId:公司或组织的id
- artifactId:一个项目或者是项目中的一个模块的id
-
version:版本号
1.2、三个向量的取值方式
-
groupId:公司或组织域名的倒序,通常也会加上项目名称
- 例如:com.CS.maven
-
artifactId:模块的名称,将来作为Maven工程的工程名
-
version:模块的版本号,根据自己的需要设定
- 例如:SNAPSHOT表示快照版本,正在迭代过程中,不稳定的版本
- 例如:RELEASE表示正式版本
举例:
- groupId:com.atguigu.maven
- artifactId:pro01-CS-maven
- version:1.0-SNAPSHOT
1.3、坐标和仓库中jar包的存储路径之间的对应关系
坐标:
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
上面坐标对应的jar包在Maven本地仓库中的位置:
Maven本地仓库根目录\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar
本地仓库根目录:之前文章中的maven解压安装目录,,, 一定要学会根据坐标到本地仓库中找到对应的jar包。(依赖问题、报错问题得查找)
2、实验操作
2.1、创建目录作为后面操作的工作空间 没有汉字没有空格和特殊符号的目录
例如:D:\maven-workspace\space01
2.2、在工作空间目录下打开命令行窗口
在cmd命令行窗口中切换到所创建的maven工作目录
2.3、使用命令生成Maven工程
控制台输入 mvn archetype:generate 运行命令:下面根据提示操作
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 7:【直接回车,使用默认值】
!!! 此处等待输入 groupId artifactId version !!!
Define value for property 'groupId': com.atguigu.maven
Define value for property 'artifactId': pro01-maven-java
Define value for property 'version' 1.0-SNAPSHOT: :【直接回车,使用默认值】
Define value for property 'package' com.atguigu.maven: :【直接回车,使用默认值】
Confirm properties configuration: groupId: com.atguigu.maven artifactId: pro01-maven-java version: 1.0-SNAPSHOT package: com.atguigu.maven Y: :【直接回车,表示确认】
④调整
Maven默认生成的工程,对junit依赖的是较低的3.8.1版本,我们可以改成4.12版本。 在项目目录中打开pom.xml文件
自动生成的App.java和AppTest.java可以删除。
<!-- 依赖信息配置 -->
<!-- dependencies复数标签:里面包含dependency单数标签 -->
<dependencies>
<!-- dependency单数标签:配置一个具体的依赖 -->
<dependency>
<!-- 通过坐标来依赖其他jar包 -->
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<!-- 依赖的范围 -->
<scope>test</scope>
</dependency>
</dependencies>
3、Maven核心概念:POM
①含义
POM:Project Object Model,项目对象模型。和POM类似的是:DOM:Document Object Model,文档对象模型。
②思想
POM表示将工程抽象为一个模型,再用程序中的对象来描述这个模型。这样