SpringRoo不理解这个项目

SpringRoo不理解这个项目,spring,spring-mvc,spring-roo,Spring,Spring Mvc,Spring Roo,六个月前,我使用SpringRoo创建实体ConfigV.v.的项目。一切正常。但现在,当我使用SpringRoo创建新实体时 entity jpa --class example 我得到了错误 Command 'entity jpa --class example' was found but is not currently available (type 'help' then ENTER to learn about this command) 我试着用其他命令 datbase pr

六个月前,我使用SpringRoo创建实体ConfigV.v.的项目。一切正常。但现在,当我使用SpringRoo创建新实体时

entity jpa --class example
我得到了错误

Command 'entity jpa --class example' was found but is not currently available (type 'help' then ENTER to learn about this command)
我试着用其他命令

datbase property list
enum constant --name example
我也有类似的错误

当我尝试创建一个示例Roo项目并测试这些命令时。它们工作正常

当我尝试创建一个空目录并运行命令时(不运行project--topLevelPackage)

我得到了结果

Command 'entity jpa --class example' was found but is not currently available (type 'help' then ENTER to learn about this command)
Roo版本是

1.2.5.RELEASE [rev 8341dc2]
log.roo文件的内容是

// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-04-25 11:01:12
hint
exit
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log closed at 2014-04-25 11:03:28
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-04-25 11:03:35
exit
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log closed at 2014-04-25 11:04:11
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-10-06 09:22:27
version
我不确定,但我认为问题在于我更改了pom.xml文件中的某些内容 如何解决这个问题?
感谢您的帮助。

Roo非常固执己见,与Spring Boot等项目不同,如果您不同意,它会感到不高兴。更改任意数量的配置设置,例如
persistence.xml的位置(尤其是不使用设置)或完全有效的POM更改,都会以不明显的方式破坏Roo

您所做的一些更改使Roo没有意识到您的项目是JPA项目。比较一个干净的Roo项目,看看有什么不同


我个人放弃了Roo,转而使用Groovy来完成Roo所做的一切,通常在实体类上使用
@CompileStatic

请注意,如果Roo示例有效,那么问题似乎出在您的项目中。。。在这种情况下,您提供的信息不足以推断发生了什么。谢谢@eruiz。我在pom.xml文件中添加了一些缺失的标记,并修复了bugThank@chrylis,我在pom.xml文件中添加了一些缺失的标记,现在roo可以正常工作,以澄清Tung。@chrylis启动和roo都需要元信息来工作。。。如果使用不受支持的注释,则无法期望启动工作;如果使用不受支持的注释,则无法期望Roo工作。此外,Roo也使用XML配置作为元信息,因此XML metainf文件中不支持的信息会导致Roo无法按预期工作。在这种行为中,Boot与Roo不同,因为它不使用XML文件作为metainf。@eruiz Boot会尽可能避免需要metainfo。它使用SPI启用类路径上的任何内容,并使用
@Conditional
启用配置的任何内容。Roo使用错误的POM解析和关于配置信息存储位置的脆弱假设,如果提供程序是由属性文件以外的任何东西配置的,则不能告诉它“相信我,这是一个JPA项目”。@chrylis无论如何,Roo和Boot不能比较,因为Roo是一个开发工具,而Boot是一个框架,这是不一样的。
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-04-25 11:01:12
hint
exit
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log closed at 2014-04-25 11:03:28
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-04-25 11:03:35
exit
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log closed at 2014-04-25 11:04:11
// Spring Roo 1.2.5.RELEASE [rev 8341dc2] log opened at 2014-10-06 09:22:27
version