在Eclipse(JEE)Oxygen中,我安装了以下插件,而不是Eclipse的Java EE发行版开箱即用的插件:
我在.groovy文件中使用Groovy进行编码(使用New - > Groovy Class创建),我经常会遇到非常奇怪且不受欢迎的自动完成行为。
示例1
如果我在新行上键入System.out.
,Eclipse会将其自动填充到System.out0.
(请注意0
)。这是System
类的私有字段,绝对不应该存在。
要摆脱它,我不能再退格并再次尝试.
,否则它会把它放回去。我必须 Backspace ,然后点击 Esc ,然后点击.
让它读取System.out.
。
示例2
在JUnit中,我在课堂上有以下字段:
@Rule
public ExpectedException ex = ExpectedException.none()
当在新行的方法体内时,我输入ex.expect(
我会看到自动完成窗口弹出,第一个结果是名为anyExceptionExpected
的成员。可以预见,当我继续输入任何东西作为方法的参数,或者输入)时,Eclipse会用以下代码替换完全合理的方法调用:ex.anyExceptionExpected(
。
再次,锤击 Esc "修复"问题,但困扰我的是,我不应该经常锤击 Esc ,以防止Eclipse完全无效地替换完全无效的代码,因为它&#39 ; s恰好在对象的成员名列表中的第一个asciibetical命中,该对象恰好具有我输入的子串的成员名称。
Eclipse中的Eclipse 当然并没有这种极端压迫的行为。 Java自动完成不会妨碍你。你可以吹嘘并输入你的陈述" raw" (没有任何自动完成功能)当你不想要它时,好像你在普通的记事本中输入一样,而Eclipse for Java通常不会过多地混淆你的代码(除了有时会让你的生活变得更糟)通过在不需要时自动添加右括号或引号,但这是次要的,因为它有时是有益的。
那么为什么Eclipse for Groovy不会做同样的事情呢?在Eclipse的庞大“首选项”窗格中是否有某个设置可以调整Groovy代码的这种行为?
基本上我希望Eclipse Groovy的自动完成功能就像默认的Eclipse Java自动完成一样工作(意思是,你使用默认的Eclipse安装,一个干净的Eclipse工作区,而不进行任何首选项更改)。我怎么能这样做?
答案 0 :(得分:0)
如果您停用了几个代码辅助选项,则只有在您明确请求时才会出现提案和完成。
窗口>偏好> Java>编辑>内容辅助: 取消选中"启用自动激活" 取消选中"自动插入单个提案"