Maven项目创建及Maven项目之间的关系

6 篇文章 0 订阅

Maven项目的创建

一、坐标的含义:
(1)每一个jar文件都有一个唯一坐标,通过坐标可以精确确定是哪一个jar包;
(2)坐标组成:
在这里插入图片描述
二、创建步骤:

  • 新建Meven Project
    在这里插入图片描述
  • 勾选创建简单项目
    在这里插入图片描述
  • 注意:如果不勾选,会出现很多模板要选择
    在这里插入图片描述
  • 勾选的情况下,填写项目信息
    在这里插入图片描述
重点:packaging :表示项目的类型,最终会被打包成什么类型,因为maven有自动打包功能
	(1) jar:java 项目;
	(2) war: web项目;
	(3) pom:逻辑父项目;
		3.1只要一个项目有子项目,就必须是pom类型;
		3.2英文名称(project object model;
		3.3中文名称(项目对象模型)
			3.3.1 把project当作对象看待;
			3.3.2 通过maven构建工具可以让对象(项目)和对象(项目)之间产生关系;

  • 之后点击Finish等带创建,之后在项目中会多一个路径。

Maven项目目录结构(jar类型)

一、截图
在这里插入图片描述
二、目录结构解释:

  • src/main/java
    是真实目录src的快捷目录,实际存储在src下,用来写Java代码。
  • src/main/resources,快捷目录
    3.1存放配置文件
    3.2虽然看见resources,但是里面所有的配置文件最终会被编译放入到classes类路径,即项目根目录下。
    3.3进行项目安装到本地后可以看到3.2的效果:
    在这里插入图片描述
  • src/text/java 写测试代码
  • src/test/resources 测试配置文件夹
  • pom.xml maven 的配置文件
    6.1 添加当前项目所依赖的其他项目或jar,插件等
    6.2 好处:
    (1)不用导出jar包也可以产生项目关系;
    (2)修改源代码方便,不用重新导出jar包;
    (3)可以直接查看源代码,不需要关联源码;
    (4)可以直接导入jar包及相关jar包。
<dependencies>
	<dependency>
    	<groupId>org.springframework</groupId>
    	<artifactId>spring-core</artifactId>
    	<version>4.1.6.RELEASE</version>
	</dependency>
 </dependencies>

注意:
在这里插入图片描述
三、maven依赖坐标查看网址
四、maven项目之间的关系(三大关系)

  • 依赖关系:
    (1)使用<dependency>标签引入另一个项目或另一个项目的jar
    (2)好处:会自动下载另一个项目所依赖的其他项目
<dependencies>
	<dependency>
    	<groupId>org.springframework</groupId>
    	<artifactId>spring-core</artifactId>
    	<version>4.1.6.RELEASE</version>
	</dependency>
 </dependencies>
  • 继承关系:
    (1)新建的父项目必须是pom类型;
    在这里插入图片描述
    (2)子项目是jar类型或war类型,如果子项目还是其他项目的父项目,则这个子项目也是pom类型;
    在这里插入图片描述
    (3)有继承关系后,子项目会出现 <parent>标签,而且如果子项目<groupId>和<version>与父项目相同,在子项目中可以不配置;在这里插入图片描述
    (4)父项目的pom.xml文件中是看不到有哪些子项目的,只是在逻辑上具有父子项目关系。
    在这里插入图片描述
    在父项目的pom.xml中引入的jar在子项目中都有。

  • 聚合关系
    (1)前提是继承关系,父项目会把子项目包含到父项目中;
    (2)子项目的类型必须是Maven Module而不是maven project;
    (3)新建聚合项目的子项目时,点击父项目右键新建maven module项目;
    (4) 具有聚合关系的父项目,在pom.xml中有<modules>标签;
    (5)具有聚合关系的子项目,在pom.xml中有<parent>;
    在这里插入图片描述
    在这里插入图片描述

  • 聚合项目和继承项目的区别
    (1)在语意上聚合项目父项目和子项目关系性较强;
    (2)在语义上单纯继承项目父项目和子项目关系性弱;

  • <dependencyManagement>的作用:写在父项目中,声明可能用到的所有jar,并且父项目的依赖不会被子项目继承。
    用法:
    (1)在父项目pom.xml中添加所有可能会用到的jar;
    (2)在子项目中写该子项目需要用到的依赖,子项目只需要有坐标的<groupid>和<artifactid>,<version>继承自父项目;
    (3)在父项目中使用<properties>把所有版本号进行统一管理,<properties>下子标签名称自定义,在下面版本号中使用${}引用;
    在这里插入图片描述
    在这里插入图片描述
    注意:这样写可以方便父项目统一管理所有子项目的依赖的版本号。而且,使用<properties>标签可以在jar包多的时候方便修改jar包的版本。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值