参数显示为arg0但仅在第一次显示?

时间:2015-12-16 08:59:17

标签: java eclipse

我很喜欢日食火星的使用者。但是有一件事让我有点烦恼:

当我在早上开始吃日食火星并开始输入例如:

list.add

(列表是一个arraylist)

然后参数显示为arg0和arg1。这只是第一次发生。因为当我再次输入“list.add”时,会显示参数名称,因此不再使用arg0和arg1。

但是当我去另一个类并通过输入hash.put来使用它时,参数再次是arg0。但是当我第二次尝试时,参数名称被正确显示,不再再有arg0了。

我确实有一个配置和选择了源的jdk(1.8 60)(安装了jres和项目)。

首先尝试,你会得到arg0:

first with arg0

第二次尝试参数名称:

second with param names

解决:

(感谢francesco foresti指出我正确的方向)

发现它!右键单击“jre系统库”,属性,选择“执行环境”单选按钮,单击“环境”按钮,选择“javase-18”并启用“兼容jre”列表中的jdk复选框。现在rt.jar有源附件而不是javadoc附件。它甚至在maven“更新项目”之后仍然保持不变。

1 个答案:

答案 0 :(得分:2)

在这里疯狂猜测,所以请耐心等待这个答案。

首次请求自动完成时,Eclipse可能会使用反编译类(来自项目依赖项)填充参数名称,因此您会看到arg0 arg1等等。同时Eclipse触发源下载请求(也许是Maven,我不知道),所以下次你想要自动完成时,你会看到参数'真名。似乎这个"自动完成缓存"具有有限的生命周期,因此当您第二天早上打开Eclipse时,它会重新开始。如果你想改变这种行为,我建议你尝试深入研究Eclipse自动完成配置。