`
iliuyong
  • 浏览: 141422 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

用ant编译时碰上 泛型的错误

    博客分类:
  • java
阅读更多

http://iliuyong.iteye.com/blog/1003127

net\simpleframework\web\page\component\AbstractEntityBeanHandle.java:80:
无法确定 <T>T 的类型参数;
对于上限为 T,net.simpleframework.ado.bean.IDataObjectBean 的类型变量 T,
不存在唯一最大实例
             return getEntityBeanById(compParameter,compParameter.getRequestParameter(getIdParameterName(compParameter)));

 1 错误

 

以上错误用eclipse编译无异常,而用ant编译就提示错误,不知二者有何区别,暂记下来

 

当前解决方法:

改成

@SuppressWarnings("unchecked")


	@Override


	public <T extends IDataObjectBean> T getEntityBeanByRequest(


			final ComponentParameter compParameter) throws Exception {


		return (T)getEntityBeanById(compParameter,compParameter.getRequestParameter(getIdParameterName(compParameter)));





	}



不过觉得解决方法不好,请路过者指点给好的方法,不胜感激
分享到:
评论
4 楼 yunnysunny 2013-09-01  
yunnysunny 写道
怀疑ant有bug
protected boolean runTreeItem(ZLTree<?> tree)
{
if (super.runTreeItem(tree))
{
return true;
}
openBookText((TOCTree) tree);
return true;
} 

这段代码中ZLTree是TOCTree的父类,但是编译的时候提示:
[javac] E:\kuaipan\code\perl\complie\comm\src\org\android\zjreader\TOCActivity.java:150: 不可转换的类型
    [javac] 找到: org.zlibrary.core.tree.ZLTree<capture#561 of ?>
    [javac] 需要: org.zjreader.bookmodel.TOCTree
    [javac]  openBookText((TOCTree) tree);
两个类的定义:
public abstract class ZLTree<T extends ZLTree<T>> implements Iterable<T>
public class TOCTree extends ZLTree<TOCTree>
不知道楼主有没有解决思路。

找到答案了,不用javac,而用jdt来编译,就可以了,参见:http://swbssd.iteye.com/blog/1166252
3 楼 zh_harry 2013-08-28  
怕就ant 的问题
强转一下吧,ant编译更严格了
其实要求严格点还是好的
2 楼 xnfzr 2012-05-30  
这个bug还没解决呢 详看https://issues.apache.org/bugzilla/show_bug.cgi?id=52691
1 楼 yunnysunny 2012-03-02  
怀疑ant有bug
protected boolean runTreeItem(ZLTree<?> tree)
{
if (super.runTreeItem(tree))
{
return true;
}
openBookText((TOCTree) tree);
return true;
} 

这段代码中ZLTree是TOCTree的父类,但是编译的时候提示:
[javac] E:\kuaipan\code\perl\complie\comm\src\org\android\zjreader\TOCActivity.java:150: 不可转换的类型
    [javac] 找到: org.zlibrary.core.tree.ZLTree<capture#561 of ?>
    [javac] 需要: org.zjreader.bookmodel.TOCTree
    [javac]  openBookText((TOCTree) tree);
两个类的定义:
public abstract class ZLTree<T extends ZLTree<T>> implements Iterable<T>
public class TOCTree extends ZLTree<TOCTree>
不知道楼主有没有解决思路。

相关推荐

Global site tag (gtag.js) - Google Analytics