IntelliJ IDEA 多个独立工程管理

说明

大多数时候,一个大的mvn工程下有多个独立的小工程,每次修改代码需要单独的打开这些独立的小工程,编码很不方便。于是新建一个顶级目录将全部的独立工程放入,无赖IntelliJ打开顶级项目,下面的工程识别不了,每个java文件上有个红色的J,何其绝望,经过直接的踩坑,总结此贴。看一张图

1. 新建空的mvn工程,作为顶级项目名
2. 将独立的mvn项目,拷贝到此目录下
3. file-->project structure-->modules-->点+新建-->选new module-->点mvn,选择你的module sdk-->选好上级parents(点开选择创建的空工程的module),填上项目arifactId,下一步,确定(如图)

添加好后,顶级工程的pom会有,<modules></modules>标签,在开发中发现有的module不能自动生成,此时需手动添加,最终类似下图

4.此后,所有的独立项目都能正常查看,正常编译执行

如果你的这个顶级项目联合 git去管理,请继续往下看。如果不是,可以去享受你的开发了

当你把上传代码到git远程后,在另一个地方 clone下代码,继续开发,此时你会发现,所有的子目录里的java文件还是显示红色j,查看module只有顶级module。我猜测是由于有的配置文件push会被忽略,子项目的module不在了,问题图如下

此时,重新导入一下module就行了

file-->project structure-->modules-->点+新建-->import module-->将路径指向子项目即可

编译

怎么编译成jar包,在shell中执行 mvn clean package,会在module下的target下产生jar文件,或者在IDEA中建立Artifacts,使用IDEA的build->build artifats功能

展望:

个人感觉,可以在 第一部分创建 子module后,手动修改子项目的 pom文件,加上parents module依赖,可能不会出现后部分git clone下来还要手动导入子module的问题(未测)

  <parent>
    <!--注意relativePath路径,我的module是在总工程下二级目录下-->
    <relativePath>../../pom.xml</relativePath> 
    <artifactId>hadoop-cost-analysis</artifactId>
    <groupId>com.sogou</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>

参考文献


https://blog.csdn.net/liuhe2296044/article/details/78957858
https://blog.csdn.net/jielinku29/article/details/79678467

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值