在Eclipse中能够编译运行,同样的代码,使用IDEA编译会失败报错:无法确定 <T>T 的类型参数;对于上限为 int,java.lang.Object 的类型变量 T,不存在唯一最大实例
通过在网上查找资料,有提到eclipse中是用到JDT编译而ant javac使用JDK,找到了几种解决方案:
1.配置使用JDK编译[0]。
2.通过加强制类型转换,可以临时绕过该问题,参考[1][2]。
3.[2][3]同时指出这是JDK1.6版本的问题,[2]中指出在升级到jdk1.6.0_45版本后,测试打包就没有问题,而我这边没有成功,根据[3]中参考的stackoverflow链接中有人指出这是JDK的一个bug,在JDK1.7中被修复了[4]。使用JDK1.7后问题没有出现。
以上是百度的解决方案;
但我在IDEA里切换了编译器,不用JDK,用eclipse的就不报错了