首页   >   心得技巧

idea导入新项目时,会出现module名字和项目名字不对应

在使用idea导出新项目时,经常会出现module名字和项目名字不对应的情况,以前研究过,但是没有做笔记,后来又忘记了,这次重构个人博客的时候,由于项目是maven多包工程,又再次碰见了这个问题,索性写篇文章来分析一下。

idea导入新项目时,会出现module名字和项目名字不对应

如上图,出现这种情况的时候,idea就会在项目名后面跟一个中括号[xxx],此时按住Shift + F6进行Rename操作的时候,就会发现,idea直接让我们修改moudle的名称,正常来说,idea是会给我们两个选择的,一个是修改package,一个是修改module,而这次没有让我们选择,也就直接说明是module的名字出了问题。

idea本身也是带有module这个概念的,如果我们创建的是maven多包工程,它也是带有一个module的概念,此时idea会兼容pom.xml中配置的module名称,所以我们来检查一下我的maven父工程的pom.xml配置。

idea导入新项目时,会出现module名字和项目名字不对应

上面就是我的maven父工程的module配置,大家可以清晰的与上面的截图作比对,我写的module明明是admin,但是最终导入进来的项目名字却变成了jwcz-admin,而真正的名字admin出现在了后面的中括号[]里面,我们现在打开项目文件夹,看一下idea生成的配置文件。

idea导入新项目时,会出现module名字和项目名字不对应

看到这里,似乎有思路了,这个.iml文件的名字,不就是对应idea中展示的项目名嘛,但这个又是从哪里来的呢?我们在maven父工程中配置的时候,并没有配置jwcz-admin的字样。

顺着这个jwcz-admin字符的方向来找,发现它是配置在admin这个子模块的pom.xml中的,是它的artifactId的值。

idea导入新项目时,会出现module名字和项目名字不对应

这下搞明白了,要想idea不做兼容处理,那就必须要将子模块的artifactId与idea中最终呈现的项目名字保持一致,否则不管是在idea中,还是在父工程的pom.xml中,就算是你配置的天花乱坠,也不顶用。

<groupId>com.wolffy.jwcz</groupId>
<!--与idea中最终呈现的项目名字保持一致-->
<artifactId>admin</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

改成上述配置之后,再次重新导入项目就显示正常了,而且idea生成的配置文件也正常了!

idea导入新项目时,会出现module名字和项目名字不对应

搞定收工。

雨落无影

QQ群Ⅰ: 686430774 (已满)

QQ群Ⅱ: 718410762

QQ群Ⅲ: 638620451 (已满)

QQ群Ⅳ: 474195684

QQ群Ⅴ: 463034360 (已满)

QQ群Ⅵ: 879266502

QQ群Ⅶ: 627786015 (已满)

工作5分钟,吹逼2小时: 855525339 (娱乐消遣,广告狗勿进)

如果文章有帮到你,可以考虑请博主喝杯咖啡!

分享到:

欢迎分享本文,转载请注明出处!

作者:不忘初心

发布时间:2020-10-06

永久地址:https://www.jiweichengzhu.com/article/e3f6cf498d704eccb7f8b2fc309fbdf8

评论