4

我有一个 Roo 项目,我在其中创建了几个实体,当我在 Eclipse 中加载项目时,它加载得很好,但是如果我创建一个实例MyEntity entity然后编写entity.,我没有得到我的任何属性(即getMyField)在自动完成列表中。如果我写entity.getMyField()它编译得很好,那是由方面来处理的。如何为方面生成的功能启用自动完成功能?

干杯

尼克

4

2 回答 2

3

您使用的是哪种“类型”的日食?你的 Eclipse 中安装了 AJDT 吗?如果是这样,仍然可以选择禁用 JDT 的编织。下面的注释(取自 Roo 文档)应该可以帮助您打开 JDT 编织(Window -> Preferences > JDT Weaving。

使用 AJDT 时,可能会提示您是否启用 JDT 的编织。您应该选择启用编织,以确保 Eclipse(或 STS)中的 Java 编辑器提供基于 AspectJ 的最佳体验。您还可以通过加载 Eclipse(或 STS)并选择 Window > Preferences > JDT Weaving 来验证此设置是否处于活动状态。

顺便说一句,您是否考虑过尝试使用Spring Source Tool Suite?在那里你会发现所有的插件(AJDT 支持......)已经安装。它非常适合 Roo,因为它在 eclipse 中提供了 Roo 功能。

于 2010-04-11T11:10:24.077 回答
1

我遇到了与 niklassaers 相同的问题:Roo AspectJ 方法在编译正常时未在 eclipse 自动完成中显示。我正在使用最新版本的 STS,默认安装了 AJDT,并验证 JDT Weaving 处于活动状态,但问题仍然存在。

另一方面,我发现执行 Maven > Update project... (Alt-F5)使 ROO AJ 方法对自动完成可见。

该解决方案可能与我如何构建我的项目有关(我的工作区中有两个 Eclipse Maven 项目,myproject.data包含带有 aj 方法的 roo 类,并myproject.services充当这些类的客户端);此外,每次打开工作区时我都必须重复 Alt-F5,但这似乎有效。

我想更好地了解这个代码完成问题的原因,也许可以找到一些永久解决问题的方法,而不必每次都更新 maven 项目。会不会与 AJDT 插件和 m2eclipse Maven 插件之间的交互有关?

于 2015-04-16T07:38:14.540 回答