我最近需要检查一个 apache 项目来进行一些事实调查/调试(特别是 maven-surefire-plugin,请参阅这个问题)。与大多数其他 apache 项目一样,这是一个 Maven 多模块项目。因此,在 Eclipse 中,我打开了SVN Repositories浏览器,添加了一个新的存储库,找到了项目和right-click->Checkout...
. 在向导中,我单击Checkout as a project in the workspace
并输入项目名称。
我有这个项目,现在我需要让 eclipse 知道它是一个 maven 项目,所以right-click->Configure->Convert to Maven Project
. 现在父项目是一个maven项目。我可以right-click->Run As->Maven Build
并且有效。但是,所有模块都只是文件夹。Eclipse 不知道源代码在哪里,或者即使它有任何源代码。在单个模块项目中,它会自动设置源文件夹、构建文件夹和其他配置。此外,如果您从头开始创建一个多模块项目,则首先创建父项目,然后,当您向其中添加模块时,它们每个都显示为 eclipse 中的单个项目,物理目录位于父项目下默认 maven 构建过程需要的文件夹。
所以现在,知道创建新项目时它是如何完成的,我可以File->New->Project...
选择General->Project
,为项目命名(我将其与模块名称匹配),取消选中Use default location
并设置Location:
为父项目文件夹内模块的路径。单击Finish
并为每个其他模块重复该过程后,我得到的东西看起来与我期望的相似。我现在需要以与父项目相同的方式将每个单独的模块转换为 maven 模块。太好了,它们都是 maven 项目,对吧?
然后我打开它们,源文件夹没有设置。
啊...然后我转到每个项目,将其打开,然后在src
文件夹 I上right-click->Build Path->Use as Source Folder
。起泡、冲洗、重复……完成所有项目后,看起来和感觉就像我从头开始这个项目。事物功能。
我的问题是,真的这么难吗?我错过了捷径吗?如果Configure->Convert to Maven Project
在父 pom 上意识到这是一个多模块项目并且为我完成了所有工作,这不是很有意义吗?对于 apache 项目来说,这是一个非常痛苦的过程,因为它们似乎都有很多很多模块......有人知道更好的过程吗?