使用多个maven模块创建新的Spring Roo项目的正确方法是什么?

时间:2012-03-26 21:25:17

标签: eclipse maven spring-roo sts-springsourcetoolsuite

如何配置Spring STS以使用现有的多模块Roo项目或从头开始创建新项目?

让我们来看第一种情况:使用Roo shell在STS之外创建项目。

我所做的就是创建父项目并为其添加maven模块。我没有设置JPA或创建任何实体。

导入此类项目(作为现有Maven项目)时,Spring STS不附加Java项目性质。因此,我无法使用IDE的内容辅助功能,或执行重构(STS抱怨代码不在构建路径上)。

在第二种情况下,我只想在STS中创建一个新项目,并开始使用Roo和多个将在稍后创建的maven模块。

使用New Spring Roo Project向导时,我选择包类型为“POM”并让向导完成它的工作。但是,“问题”视图中会报告错误。 STS抱怨它无法找到预期的源文件夹(例如,src / main / java ...)。

为什么这么难受?

谢谢, 杰夫

2 个答案:

答案 0 :(得分:1)

好吧,我一直在使用Roo一段时间,并注意到你刚才报告的异常情况。我还没有检查你的博客,但标记为进一步阅读。

无论如何,对于我的多模块项目,我通常在STS内部或外部创建它们。两者都导致了您报告的相同问题(#1错误的父项目结构,没有找到src,以及#2在导入Maven项目后损坏项目)。

我想澄清的第一件事是,在将项目导入STS或任何带有Maven插件的Eclipse版本之前,您不必运行“执行eclipse”。导入将仅通过“导入Maven项目”选项(以及在Roo手册中明确写出)工作(具有先前的缺陷)。

至于我们正在谈论的问题,好吧,我通常从子项目的POM中删除Roo性质,以避免打开Roo Shell(如果它发生,Roo倾向于删除一些.aj文件,正如你所说,它会破坏你的项目)。然后我只在父项目中使用Roo,然后使用“模块焦点”命令来处理子项目。

我相信Spring团队会在适当的时候让一切正常,但是现在,Roo是一个很好的选择,我相信这些变通办法值得继续在Eclipse / STS中使用它。

祝你好运, Thiago Uriel

答案 1 :(得分:0)

首先,如果您需要在Eclipse中使用基于Roo控制台的项目 - 您需要在Spring Roo shell中运行perform eclipse。在内部,它调用Maven Eclipse插件并运行mvn eclipse:eclipse以确保您的Maven项目可以成功导入Eclipse / STS。

与多模块项目相关,请参阅StackOverflow上与多模块项目相关的现有问题。

干杯。