Eclipse中创建Maven Module和Maven Project及其间区别

Maven Module和Maven Project

在这里插入图片描述
Maven Project可以理解为父工程,是最上级的项目,一般没有其他parent项目。是一个单独、独立的工程,在打包为jar或者war时,可以单独运行。如果在pom文件中添加了对父工程的依赖,则作为父工程的子工程。

Maven Module可以理解为子工程,就是为了继承,引用父项目而建的。Maven Module也是一个maven 工程,但是却是一个子工程,必须有父工程存在并依赖,Maven Module不能抛弃父工程单独存在。
创建Maven Module工程必须有存在的父工程,maven就是通过父子工程进行工程管理的。

另外一点区别是,如果是Maven Module,那么在父工程的POM文件中肯定有module节点,示例如下:
在这里插入图片描述

因为父工程的POM文件中有module节点的存在,所以在父工程使用命令run as Maven install将会把父工程与所有子工程都打包安装到本地仓库。

Project和Module的关系及用法

项目中一般使用maven进行模块管理,每个模块下对应都有一个pom文件,pom文件中维护了各模块之间的依赖和继承关系。项目模块化可以将通用的部分抽离出来,方便重用;修改一部分代码不再是build整个项目,缩短了build时间;此外各模块都有自己的pom文件,结构更清晰。

使用maven进行模块划分管理,一般都会有一个父级项目,pom文件除了GAV(groupId, artifactId, version)是必须要配置的,另一个重要的属性就是packaging打包类型,所有的父级项目的packaging都为pom。packing默认是jar类型,如果不作配置,maven会将该项目打成jar包。作为父级项目,还有一个重要的属性,那就是modules,通过modules标签将项目的所有子项目引用进来。而对于各个子项目,需要在其对应的pom文件开头申明对父级项目的引用,通过GAV实现。对于子项目自己的GAV配置,GV如果不配置,则会从父级项目的配置继承过来。子模块可通过dependencies标签来添加自己的依赖,此外子类项目的packaging值一般是war或者jar,前面已经说过,packaging默认是jar类型。如果是需要部署的项目,则需要打包成war类型,如果只是内部调用或者是作服务使用,则推荐打包成jar类型。

在build父级项目时,会根据子模块的相互依赖关系整理一个build顺序,然后依次build。

还可看看我的这篇博客

Maven Module工程必须有父工程

如下图所示
在这里插入图片描述

创建Maven Project

Eclipse中顶部导航栏点击File——New——Project,在弹出的对话框中选择“Maven Project”,如下图所示。
在这里插入图片描述
点击Next,如下图所示。在此处界面,若勾选红框中的选项则会创建一个简易版的Maven项目,跳过下一张图选择archetype selection的界面;若不勾选,则会进入下一张图的界面,并必须从加载出来的列表中选择一个工程,才可进入下一步。
在这里插入图片描述
此时需静等一会,列表便会加载出来,如下图所示。选择…。
在这里插入图片描述
点击Next,进入如下图所示的界面。此处务必注意,最终创建出来的Project名称是下图红框中的Artifact Id中的名称,而非下图name中定义的mavenProjectPackaging选择pom,点击Finish完成项目创建,创建Maven项目时设置的属性如下图所示。
在这里插入图片描述

Group IdArtifact Id是当前创建项目的坐标,Packaging是选择当前项目的打包类型(有pom、jar、war),如上图所示。

  • pom工程:用在父级工程或聚合工程中。用来做jar包的版本控制。
  • war工程:将会打包成war,发布在服务器上的工程。如网站或服务。
  • jar工程:将会打包成jar用作jar包使用,packaging默认类型

创建出的Maven项目及其结构,如下图所示。
在这里插入图片描述
创建出的Maven项目中的pom.xml文件,如下图所示。
在这里插入图片描述

创建Maven Module

Eclipse中顶部导航栏点击File——New——Project,在弹出的对话框中选择“Maven Module”,如下图所示。
在这里插入图片描述
选择Maven Module,点击Next,进入下图界面。在下图中,如果不给当前创建的Module选择一个Parent Project,无法点击Next进入一步。此时只需点击“Browse”选择对应的Parent Project即可。
在这里插入图片描述
如果只是为了练手,可以在此处界面勾选下图红框的选项。若勾选红框中的选项则会创建一个简易版的Maven Module,跳过下一张图选择archetype selection的界面;若不勾选,则会进入下一张图的界面,并必须从加载出来的列表中选择一个工程,才可进入下一步。
在这里插入图片描述
此时需静等一会,列表便会加载出来,如下图所示。选择…。
在这里插入图片描述
在通过上一步后,来到如下图所示的界面,因为创建的就是Module,所以下图中的Artifact Id不可再改,只需选择当前创建的Module需要哪个Project即可——即选择下图中的Group Id即可。Packaging我看博客有提到说Module一般选择jar或war,不能选pom,此处还未学习,待确认。确认无误后点击Finish即可。
在这里插入图片描述
创建出的Maven Module结构,如下图红框所示。红框下方的pom.xml是maven Project中的pom.xml文件。
在这里插入图片描述
创建出的Maven Module中的pom.xml文件,如下图所示。
在这里插入图片描述

在删除Maven Module所属的Maven Project后,Maven Module会变为一个单独的项目留存,不会一同被删除。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
将一个Eclipse项目转化为Maven项目的步骤如下: 1. 在Eclipse,右键单击要转换为Maven项目的项目,选择“Configure”>“Convert to Maven Project”。 2. 在“Convert to Maven Project”对话框,输入groupId和artifactId等Maven项目信息,然后单击“Finish”按钮。如果你不知道如何填写这些信息,可以参考Maven文档的说明。 3. 在“Project Explorer”视图,你可以看到项目已经转换为Maven项目,并且已经包含了pom.xml文件。你可以在pom.xml文件配置项目所需的依赖项,以及其他Maven构建配置。 4. 如果你的项目有多个模块,可以使用Maven来管理它们,使得模块之的依赖更加清晰。要将一个Eclipse项目转换为Maven多模块项目,可以按照以下步骤操作: - 在Eclipse,右键单击要转换为Maven项目的项目,选择“Configure”>“Convert to Maven Project”。 - 在“Convert to Maven Project”对话框,输入groupId和artifactId等Maven项目信息,然后单击“Finish”按钮。 - 在“Project Explorer”视图,右键单击要添加为子模块的项目,选择“New”>“Other”>“Maven”>“Maven Module”。 - 在“New Maven Module”对话框,输入子模块的artifactId和其他信息,然后单击“Finish”按钮。 - 在父模块的pom.xml文件添加子模块的依赖信息,例如: ``` <modules> <module>child1</module> <module>child2</module> </modules> ``` 以上就是将Eclipse项目转换为Maven项目的步骤,以及如何使用Maven管理多模块项目的简单示例。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值