idea如何做到多模块开发项目

首先,推荐两个不错的后台系统模板,非常的不错,力荐。

1.码云地址:BootDo后台管理系统

2.码云地址:若依后台管理系统

因为之前一直在用BootDo后台管理系统模板,一直是在一个项目中开发。后来偶然在开源中国上看到了若依后台管理系统,就点进去看了一下,与BootDo相比,有共同之处,也有差别(具体感受大家把源码下载下来跑一下就知道了),若依后台系统是分模块开发的,即每个功能点都独立成一个模块去维护,如果多个模块之前有关联关系,则通过pom将模块关联起来就可以了,我们直接通过源码的目录对比一下就可以看出来了。图一是BootDo,图二是若依。

 

所有功能菜单的代码都在一个项目中开发

每个菜单或功能点作为单独的模块开发维护

其实在大公司的开发团队中,每个人的工作任务分的很细,某个人就负责某个具体的模块,这样的分模块开发就显得尤为重要,但是如果开发人员B开发的模块B依赖于开发人员A开发的模块,他们的代码又不在同一个模块中无法相互调用,我们该怎么做呢,今天就来记录下如何使用idea开发工具进行多模块的开发。

事前准备

jdk1.8

maven

idea

以上环境大家自己配置好


创建父子项目(聚合项目)

首先,先创建个父级工程

File--->New--->Project...

勾选Create from archetype--->选择maven-archetype-site-simple--->点击Next

填写三个必需项GAV(按个人情况填写)--->点击Next

groupId、artifactId、version。三个代表的意思分别为:项目的组织,项目的模块名,版本号。

Next

Finish

父级项目创建完成,下面创建子模块

注意:在我们创建好的项目上右键,选择New,再选择Module.不要点到菜单栏上去了

这里我们选择quickstart,表示创建个普通的项目,然后Next。

因为我们的模块是在父级项目下创建的,所以我们只需要填写我们要创建的本模块的名称就可以了,一路下一步,直至Finish.

可以看到我们创建的xiaomi-dao模块创建完毕,并且该模块是在父级项目XiaoMi下的。

参考以上的几个步骤,我们再来创建一个xiaomi-service模块,步骤不再贴图赘述,创建后是这样的。

现在项目的基本结构是创建完了,比如我需要让同事A去开发xiaomi-dao模块(这里做演示随便写个方法)

现在同事A把模块开发完了,我需要让同事B在xiaomi-service模块中取调用同事A开发的这个功能,于是同事B开始工作。

同事B把功能开发完了,但是有个问题:同事A的功能跟我开发的功能不在一个模块里,我该怎么去调用呢?(如上图,已报错)

同事C看到他们遇到了问题,就告诉他们,其实很简单,只需要将被调用者的模块打成jar包,然后使用者去引用这个jar包就可以了

同事A恍然大悟,于是开始对xiaomi-dao进行打包成jar包。

当被打包的模块中出现target目录,说明打包完成了(未打包或未编译的模块或项目是不会有这个target目录的)

打包完成后,同事A便对同事B说,我已经打包完了,没我的事了,哈哈哈哈哈。

同事B又找到同事C说,我现在该如何引用他搭好的jar包呢?同事C说,其实很简单,我们这样做。

找到同事A打成jar包的所在目录,用记事本打开.pom文件

绿色框包含的内容就是在xiaomi-service模块的pom文件中需要添加的依赖,我们现在把它加进去,如图所示。

注意,此依赖是在xiaomi-service中添加,不要搞懵逼了跑到xiaomi-dao中去加啊。

现在我们再来看一下同事B的模块里的方法还报不报错了,现在不报错了、

我们运行一下看能否正常运行。

大功告成!

多模块开发项目教程到此结束,总结一下:在多模块开发项目中,当模块与模块之间有关联关系时,我们只需要将被调用的模块打成jar包,然后将此jar包的GAV(groupId,artifactId,version)信息在需要使用的模块中去添加依赖就可以了,注意:如果被调用的模块发生了改变,需要重新打包,否则使用者依赖的还是旧版本的jar包。

 

  • 8
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: Spring Boot多模块项目是指将一个大型的项目拆分成多个模块,每个模块都可以独立开发、测试、部署和维护。这种方式可以提高项目的可维护性和可扩展性,同时也可以提高开发效率。 在Spring Boot多模块项目中,通常会有一个父模块和多个子模块。父模块通常包含一些公共的配置和依赖,而子模块则包含具体的业务逻辑和功能实现。子模块可以依赖父模块,也可以相互依赖。 使用Spring Boot多模块项目需要注意以下几点: 1. 父模块的pom.xml文件中需要定义所有子模块的依赖关系和版本号。 2. 子模块的pom.xml文件中需要定义自己的依赖关系和版本号,同时需要引入父模块的依赖。 3. 子模块之间的依赖关系需要谨慎处理,避免出现循环依赖或者版本冲突的情况。 4. 在开发、测试和部署时,需要分别处理每个子模块,确保每个模块都能够独立运行和测试。 总之,Spring Boot多模块项目可以提高项目的可维护性和可扩展性,但需要注意依赖关系和版本管理等问题。 ### 回答2: Spring Boot 是目前非常流行的开源 Java Web 框架,因其简单易用、开发速度快以及微服务架构支持等优点,广受开发者喜爱。在实际开发中,经常需要构建多模块项目,以便于更好地组织代码结构和管理。 首先,我们需要了解什么是多模块项目。多模块项目通常是指把一个大的项目分成多个小的模块,每个模块都有自己的功能和代码库,可以独立编译和部署。多模块项目的好处在于,可以更好地实现团队协作,模块之间的依赖性和耦合度也更低。 那么,在 Spring Boot 中如何构建多模块项目呢?通常,我们可以通过 Maven 或 Gradle 来实现。下面以 Maven 为例,介绍一下搭建多模块项目的具体步骤: 1.新建父级项目 首先,我们需要创建一个父级项目,称为“parent”。在该项目中,定义一些公共的依赖和配置,供子模块使用。在父级项目的 pom.xml 文件中,定义如下内容: <groupId>com.example</groupId> <artifactId>parent</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>pom</packaging> 其中,groupId 表示一个组织或机构的唯一标识符,artifactId 表示项目的唯一标识符,version 表示版本号,packaging 表示项目打包的方式。 2.新建子模块 在父级项目中,我们可以创建多个子模块,每个子模块的功能独立。在 Maven 中,可以通过执行以下命令来创建子模块: mvn archetype:generate -DgroupId=com.example -DartifactId=module1 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 其中,-DgroupId 和 -DartifactId 表示子模块的唯一标识符,-DarchetypeArtifactId 表示使用的模板类型,-DinteractiveMode=false 表示禁止交互式模式。 3.配置子模块 在子模块的 pom.xml 文件中,我们需要添加一些依赖和配置。其中,<parent> 标签用于引用父级项目的配置,<dependencies> 标签用于声明子模块所依赖的其他模块或库,<build> 标签用于定义构建插件和其他构建相关的配置。 4.运行项目 当我们完成了上述配置后,我们可以通过 Maven 命令来打包和运行项目。例如,通过执行以下命令,我们可以运行项目: mvn spring-boot:run 总结: 以上就是在 Spring Boot 中构建多模块项目的基本步骤。多模块项目适用于复杂的大型应用程序,它可以帮助我们更好地组织代码结构和管理,为团队协作提供支持。在搭建多模块项目时,我们应该尽量避免模块之间的依赖和耦合度过高,以确保代码的可维护性和可扩展性。 ### 回答3: Spring Boot 多模块项目是一种在一个大项目中由多个小项目/模块组成的技术架构,每个模块都是相互独立并可以单独部署的。这种结构可以让开发者更好地管理和维护项目。 在以往的开发中,一个大项目通常是由同一个团队负责开发的,而功能通常是由许多小模块组成的。这样的好处在于,由于每个模块都是相互独立的,因此团队中的不同成员可以同时独立开发不同模块,而不会影响整个项目的进展。在大的项目中,拆分成多个模块,还可以提高工程的可读性和可维护性。 Spring Boot 多模块项目也是一种实现微服务架构的方式。模块可以在不同的服务器上独立部署和启动,可以更加灵活地管理多个服务,实现服务之间的解耦。例如,我们可以将数据库模块和前端展示模块分别部署到不同的服务器上,更好地实现服务的扩展。 在一个基于Spring Boot的多模块项目中,常见的模块包括: 1. 核心模块:存放业务逻辑的代码,核心模块是整个系统的基础,通常是通过Spring Boot提供的Starter模块来获得。 2. 数据访问模块:存放数据访问的代码,例如数据库的连接和操作等。在一些更为复杂的多模块项目中,可能会有多个数据访问模块。 3. 服务层模块:提供服务层的代码,这些代码通常负责接收请求,对请求进行处理并返回适当的响应。 4. Web 模块:负责与前端交互的代码,例如控制器、模板、视图等。 在分别建立这些模块之后,我们还需要在整个多模块项目中确定各模块之间的依赖关系,通过Maven等构建工具进行模块的打包并对其进行单独部署。这样做不仅可以让我们更好地管理项目,还可以更快速地进行部署和升级。 综上所述,Spring Boot 多模块项目是一种非常实用的开发技术架构,拥有良好的扩展性、可维护性和可读性,是开发大型项目和实现微服务架构的不二之选。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值