我最近刚从 JDK1.6 切换到 JDK 1.7。
我有这个代码:
SomeClass<SomeType> someVariable = new SomeClass<SomeType>(createSomeObject());
现在我收到警告:
Redundant specification of type arguments <SomeType>
如果我使用快速修复 Eclipse 会给我这个:
SomeClass<SomeType> someVariable = new SomeClass<>(createSomeObject());
这导致
Got an exception - expecting EOF, found 'xyz'
xyz 是我的代码文本中的下一项。
当我删除尖括号时,我收到以下警告:
SomeClass is a raw type. References to generic type SomeClass<M> should be parameterized
如果我添加类型参数,我最终会收到第一个警告(冗余规范......)
WTF正在进行吗?
我想保留这两个警告,我仍在使用 Eclipse 3.7.1。如果有另一种方法可以解决这个问题,我不愿意更新我的 Eclipse,因为我需要一些时间来按照我想要的方式再次配置它。