项目结构,如下图
一、管理
1.1 父子间依赖问题
Pom 工程引入Module,直接 New Module 即可,在 父类的Pom.xml 会自动加入module基本信息,如下
<modules>
<module>initSqlBuild</module>
<module>specificationBuild</module>
<module>queryDsl</module>
<module>initHsqlBuild</module>
<module>SqlMapping</module>
<module>jpaCommon</module>
</modules>
新引入的Module的Pom.xml,文件,自动引入如下信息
<parent>
<artifactId>jpa</artifactId>
<groupId>com.tonels</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>specificationBuild</artifactId>
1.2 Module间依赖问题
一般会在聚合工程中,加入common模块,提取公共信息,给所有同级模块使用,这个是单向配置的。
直接在依赖方的Pom.xml 里配置如下
<dependency>
<groupId>com.tonels</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
1.3 二级父依赖一级父问题,类似上面,直接,加入配置即可
<dependency>
<groupId>com.tonels</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
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打包正常,IDEA无法打包,尝试各种方法解决,我之前写过一些总结,点击可链接。。
要注意的地方