博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IntelliJ IDEA中关于Maven构建复杂的聚合工程的管理和打包问题
阅读量:3926 次
发布时间:2019-05-23

本文共 1628 字,大约阅读时间需要 5 分钟。

项目结构,如下图

在这里插入图片描述

一、管理

1.1 父子间依赖问题

Pom 工程引入Module,直接 New Module 即可,在 父类的Pom.xml 会自动加入module基本信息,如下

initSqlBuild
specificationBuild
queryDsl
initHsqlBuild
SqlMapping
jpaCommon

新引入的Module的Pom.xml,文件,自动引入如下信息

jpa
com.tonels
1.0-SNAPSHOT
4.0.0
specificationBuild

1.2 Module间依赖问题

一般会在聚合工程中,加入common模块,提取公共信息,给所有同级模块使用,这个是单向配置的。

直接在依赖方的Pom.xml 里配置如下

com.tonels
common
1.0-SNAPSHOT

1.3 二级父依赖一级父问题,类似上面,直接,加入配置即可

com.tonels
common
1.0-SNAPSHOT

1.4 关于项目的重新命名问题,分为两步,

第一步 点击左侧模块名(project 视图下),快捷键 Shirt + F6,出现,下图分别 Rename文件夹名和Module名

在这里插入图片描述

第二步 手动修改所依赖和所有被依赖的地方,这里我试过,本地IDEA并没有重新 Rafactor 所有的相关者

1.5 关于Parent项目的Remove Module问题,分三步

第一步 点击左侧模块名(project 视图下),右键,如图

在这里插入图片描述

或者直接键盘 Delete,会出现如下,OK 即可
在这里插入图片描述
注意:Ok 之后,两个地方会出现变化
在这里插入图片描述

第二步 Remove 之后,此时的Pom工程中,模块管理的地方并没有自动移除,这里要手动移除

在这里插入图片描述

移除后,会注意到,我们期望的,Maven视图下的灰色模块就会不见了。

第三步 手动 Delete projerct视图下的模块即可

二、打包问题

Maven打包就一个问题,就是找不到依赖的问题,可能基于 Eclipse 和 IDEA 的一些配置管理的不同,打包有时会出现不同的结果,有时,Eclipse打包正常,

要注意的地方

2.1 自动打包,在最跟处,用IDEA集成的Macen插件,直接 clean 之后,install 即可

在这里插入图片描述

2.2 手动打包,要完全按照依赖顺序,依次打包,这里我开始是手动依次打包,出现了暂时解决不了的问题,找不到依赖包,后来我选择了第一种。。。。

2.3 打包后的目录结构,为什么会是这个样子??

在这里插入图片描述

并不是我所希望的目录结构,那种按项目分级的项目结构,可能是我定义Package的时候,不规范,全是 com.tonels 引发的问题,先不探究这个了…其实所有的一切是因为,我先在二级 parent 中定义了一个与一级 parent 同名的模块,我以为会按项目结构划分打包目录,然后后来,引包引不进去,修改项目名,打包不成功,等等暂时不能解决的问题。

上一篇

转载地址:http://rygrn.baihongyu.com/

你可能感兴趣的文章
设计模式之命令模式
查看>>
springBoot系列(2)整合MongoDB实现增删改查(完整版)
查看>>
java关键字(6)void
查看>>
面试必问:java中String对象为什么要设计成不可变的呢?
查看>>
深入分析java中的反射机制
查看>>
java集合类(7)Stack
查看>>
7、深入分析java中的泛型机制
查看>>
java序列化机制之protobuf框架(快速高效跨语言)
查看>>
6-1 Book类的设计 (10分)
查看>>
7-3 学生类-构造函数 (15分)
查看>>
7-4 类的定义与对象使用 (15分)
查看>>
7-5 jmu-Java-03面向对象基础-02-构造函数与初始化块 (20分)
查看>>
6-1 数组工具类的设计 (16分)
查看>>
7-1 程序填空题2 (12分)
查看>>
7-2 程序改错题3 (12分)
查看>>
7-3 计算年龄 (20分)
查看>>
7-3 利用集合类排序 (12分)
查看>>
6-1 创建一个直角三角形类实现IShape接口 (10分)
查看>>
6-2 从抽象类shape类扩展出一个圆形类Circle (10分)
查看>>
7-1 jmu-Java-04面向对象进阶--02-接口-Comparator (20分)
查看>>