IDEA搭建多模块的Maven项目方式(相互依赖)

 更新时间:2024年08月27日 11:36:05   作者:X_u  
这篇文章主要介绍了IDEA搭建多模块的Maven项目方式(相互依赖),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

需求

idea上搭建maven项目 MainModule,MainModule依赖ModuleA和 ModuleB,ModuleB依赖ModuleA。

ModuleA 和ModuleB中只有serve层到数据库层的文件,即这两个模块的maven项目,只有src/main/java文件夹。

方式一:MainModule引用ModuleA和ModuleB的jar形式

即将ModuleA和ModuleB编译后的jar包编译到MainModule的lib文件中。

运行项目的时候MainModule会走ModuleA和ModuleB的源码,MainModule勾选自动编译或者手动编译MainModule,修改ModuleA和ModuleB的代码后,会即时生效。

步骤:

1.导入maven项目:MainModule如图:

2.MainModule(pom.xml)如下图:

3.如图引maven项目:ModuleA和ModuleB

4.ModuleA(pom.xml):

5.ModuleB(pom.xml)如下图:

6.查看MainModule是否依赖ModuleA和ModuleB这两个项目:

说明:

这种方式,项目MainModule加入ModuleA和ModuleB会自动依赖源码。

方式二:MainModule引用ModuleA和ModuleB的源码形式

即将ModuleA和ModuleB源码编译后输出到MainModule的编译路径下面。

步骤:

1.导入maven项目MainModule

2.MainModule(pom.xml)如下图:ModuleA和ModuleB.jar范围为:provided(表示运行时,不会将包放进lib里面)

3.如图引入maven项目:ModuleA和ModuleB

4.ModuleA(pom.xml):, 

5.ModuleB(pom.xml):

6.设置MainModule

说明:

这种方式,项目MainModule直接运行的是ModuleA和ModuleB源码而不是jia包。

方式三:使用pom.xml的

<parent></parent>

标签。以后补齐

总结

不同点:

  • 方式一:build artifacts后,moduleA和moduleB以jar的形式存在MainModule编译后的的lib文件夹下面。
  • 方式二:build artifacts后,moduleA和moduleB以源码的形式存在MainModule编译后MainModule\target\MainModule\WEB-INF\classes文件夹的下面。

相同点:

  • MainModule的自动编译或者手动编译后,修改moduleA和moduleB的代码,会即时生效。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java内存溢出实现原因及解决方案

    Java内存溢出实现原因及解决方案

    这篇文章主要介绍了Java内存溢出实现原因及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • 浅谈java 字符串,字符数组,list间的转化

    浅谈java 字符串,字符数组,list间的转化

    下面小编就为大家带来一篇浅谈java 字符串,字符数组,list间的转化。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • SpringBoot集成Spring Data JPA及读写分离

    SpringBoot集成Spring Data JPA及读写分离

    这篇文章主要介绍了SpringBoot集成Spring Data JPA及读写分离的相关知识,需要的朋友可以参考下
    2017-04-04
  • SpringBoot项目使用jasypt加解密的方法

    SpringBoot项目使用jasypt加解密的方法

    jasypt是一个通用的加解密库,我们可以使用它在配置文件中对数据库密码进行加密,以确保其安全性,接下来通过本文给大家介绍SpringBoot项目使用jasypt加解密的方法,感兴趣的朋友一起看看吧
    2022-05-05
  • 关于RowBounds分页原理、RowBounds的坑记录

    关于RowBounds分页原理、RowBounds的坑记录

    这篇文章主要介绍了关于RowBounds分页原理、RowBounds的坑记录,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Java全面分析面向对象之多态

    Java全面分析面向对象之多态

    多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量到底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定
    2022-04-04
  • springboot~ObjectMapper~dto到entity的自动赋值

    springboot~ObjectMapper~dto到entity的自动赋值

    这篇文章主要介绍了springboot~ObjectMapper~dto到entity的自动赋值,本文分三种情况给大家介绍,需要的朋友可以参考下
    2018-08-08
  • Spring Boot Actuator监控器配置及使用解析

    Spring Boot Actuator监控器配置及使用解析

    这篇文章主要介绍了Spring Boot Actuator监控器配置及使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • SpringBoot使用Guava实现日志脱敏的示例代码

    SpringBoot使用Guava实现日志脱敏的示例代码

    本文主要介绍了SpringBoot使用Guava实现日志脱敏的示例代码,使用Guava中的Strings、Maps和CharMatcher类来进行日志脱敏,保护敏感数据的安全,感兴趣的可以了解一下
    2024-01-01
  • java的各种类型转换全部汇总(推荐)

    java的各种类型转换全部汇总(推荐)

    下面小编就为大家带来一篇java的各种类型转换全部汇总(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05

最新评论