开发者

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

开发者 https://www.devze.com 2024-08-28 10:27 出处:网络 作者: X_u
目录需求方式一:MainModule引用ModuleA和ModuleB的jar形式方式二:MainModule引用ModuleA和ModuleB的源码形式方式三:使用pom.XML的总结需求
目录
  • 需求
  • 方式一:MainModule引用ModuleA和ModuleB的jar形式
  • 方式二:MainModule引用ModuleA和ModuleB的源码形式
  • 方式三:使用pom.XML的
  • 总结

需求

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

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

方式一:MainModule引用Mo编程客栈duleA和ModuleB的jar形式

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

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

步骤:

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

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

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

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

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

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

4.ModuleA(pom.xml):

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

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

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

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

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

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

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

说明:

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

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

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

步骤:

1.导入maven项目MainModule

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

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

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

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

4.ModuleA(pom.xml):, 

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

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

5.ModuleB(pom.xml):

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

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

6.设置MainModule

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

说明:

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

方式三:使用pom.xml的

&javascriptlt;parent></parent>

标签。以后补齐

总结

不同点:

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

相同点:

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号