如何解决Maven中的Inconvertible类型错误

时间:2013-07-16 09:40:47

标签: java maven

我正在使用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中显示为警告。

如果有人帮助我,我将不胜感激。 提前谢谢。

2 个答案:

答案 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");