type parameters of T cannot be determined; no unique maximal instance exists for type variable T with upper bounds int,java.lang.Object

今天在进行代码检查的时候出现下面的异常:

 type parameters of <T>T cannot be determined; no unique maximal instance exists for type variable T with upper bounds int,java.lang.Object

当时的第一感觉就是代码因为jdk版本太低引起的、

因为最后咨询了配置管理组的同事,确实发现是因为我本地jdk用的是1.7版本,而代码检查机器上用的是jdk1.6版本。因此出现了这个问题。

其实出现这个问题的解决办法很简单:

1.  升级jdk版本

2.    修改代码

第一种升级jdk版本的方式我们就不细说了,说说第二种,原始代码为:

     public int queryIpCount(String ipAddr) {
return getSqlSession().selectOne("IpVerify.queryIpCount", ipAddr);
}

修改为:

     public Integer queryIpCount(String ipAddr) {
return getSqlSession().selectOne("IpVerify.queryIpCount", ipAddr);
}

也就是将返回类型从int修改为Integer就ok了。

参考资料:

Error: type parameters of <T>T cannot be determined during Maven Install

上一篇:翻译:INSERT(已提交到MariaDB官方手册)


下一篇:翻译:SET PASSWORD语句(已提交到MariaDB官方手册)