我正在使用maven 3.0.5和JDK 1.7.0_17。当我使用mvn install运行maven时,无论转换发生在哪里,我都会收到以下错误,并且在JBoss中它显示为警告。
[错误] \ Workspace \ my-app \ src \ controller \ ChangeNoterController.java:[159,43]错误:不可转换类型
上述代码的代码是:
if (resultMap != null) {
changeNoteList = (List<ChangeNoter>) resultMap.get("changeNoterList");
changeNoteListSize = (int) resultMap.get("changeNoterListSize"); --error
}
我在maven中发生了相同的“Inconvertible types”错误,只要在Java中发生此转换,就会在Java中显示为警告。
如果有人帮助我,我将不胜感激。 提前谢谢。
答案 0 :(得分:0)
什么是resultMap
?
可能resultMap
包含一些没有特定类型的对象,例如:Map<String, Object>.
1)当您尝试解析整数时尝试以下方法之一:
Integer newValue = (Integer) resultMap.get("changeNoterListSize").toString();
Integer newValue = Integer.parseInt(resultMap.get("changeNoterListSize").toString());
从String
转换为Int时,Maven总能更好地工作 2)转换为列表List<ChangeNoter>
可能很棘手,在这种情况下尝试循环遍历resultMap.get("changeNoterList")
并逐个添加到new List<>();
答案 1 :(得分:0)
由于方法Map.get(Object)
返回一个对象,因此无法将对象转换为int
。尝试将对象转换为Integer。这是片段,
changeNoteListSize = (Integer) resultMap.get("changeNoterListSize");