Table of Contents
不出现子项目的pom文件导致无法导入maven多模块项目的解决办法
------------------------------------------------------------------------------------------------------------------------------------------------
使用版本控制工具的时候,jar包是不会上传的。当别人pull了代码后,会自动下载依赖(基于maven)
------------------------------------------------------------------------------------------------------------------------------------------------
只要项目基于maven,那么eclipse和idea,是可以很方便互相导入的。导入的时候需要一些设置。
需要注意的就是:不要把idea或者eclipse的配置文件push到git中
------------------------------------------------------------------------------------------------------------------------------------------------
导入idea
未能成功识别子模块
idea导入多聚合模块,导入成功后应该如下图所示,注意子模块图标右下角的蓝色方块,表示
如果idea未能正确识别子模块,如下图
出现该问题,是由于打开工程的时候IDEA只编译了最外层的pom.xml文件,而内部的各个module未被Maven自动检索到(各module的pom.xml文件未被编译)。
解决办法,添加子模块的pom文件:
------------------------------------------------------------------------------------------------------------------------------------------------
导入eclipse
普通项目导入
普通项目很简单,就不说了,web项目导入eclipse,有几个坑要注意:
多模块聚合项目导入
多模块项目,导入的时候如下:
导入后,出现在eclipse的是3个项目,结构如下
他们各自有各自的生命周期,同时配置了聚合后,父项目执行生命周期,两个子项目也会跟着执行。
不出现子项目的pom文件导致无法导入maven多模块项目的解决办法
有时候导入的时候,不出现子包,只出现父,如下图
这是因为,没有聚合子类,没有在父项目的pom文件里设置<modules>导致的
解决办法:
- 可以在父pom里添加聚合
- 因为正常情况下,eclipse里的项目结构是父类,子类都作为项目出现,并且父类里有子类的文件夹的复制。子类项目有改动,这些父类里的子类的文件夹内容也会跟着改动。所以,我们可以把父类导入后,再把父类里的子类的文件夹作为单独的maven项目再次eclipse即可。
tomcat7:run无法启动项目(同样适用于idea)
其次,如果想要使用tomcat7:run运行项目,就需要在pom文件里,设置标签package为war才可以。如果不设置,就会出现
[INFO] Skipping non-war project
这样的报错信息,表示跳过了没有war的项目。
导入项目web模块出问题
重建web模块即可。重建方法参考 :(推荐)不用archetype创建maven项目-eclipse