今天在进行代码检查的时候出现下面的异常:
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