如何解决Maven 的铸造问题,但不是 Eclipse
我遇到了一个类型转换问题,我找不到解决方法。
上下文是一个用 java 6 开发的遗留项目,它有项目 B 依赖于项目 A。 目前,构建过程涉及为项目 A 生成 .class 并在构建之前手动将它们复制到项目 B 中。这很尴尬,但它有效。
当我尝试将依赖项定义到 pom 中时出现问题,以便我们可以摆脱手动过程并让 maven 处理依赖项。
这是导致错误的代码:
List<RowFilter<MyTableModel,Integer>> filters = new ArrayList<RowFilter<MyTableModel,Integer>>();
myTable.setFilter(RowFilter.andFilter(filters);
setFilter 定义为:
public void setFilter(RowFilter<MyTableModel,Integer> filter)
我得到的错误是:
setFilter(javax.swing.RowFilter
我需要了解为什么它在当前构建过程中有效,但在使用 maven 依赖项时无效?以及如何修复它。
谢谢
解决方法
在玩了一些演员之后,我发现以下方法可行:
-
在每次调用 setFilter 时都这样做(十多个)
myTable.setFilter((RowFilter<TableModel,Integer>) (Object) RowFilter.andFilter(filters));
-
或者像这样重新定义 setFilter 签名
public void setFilter(RowFilter<?,?> filter)
-
或者像这样
public void setFilter(RowFilter filter)
谁能解释为什么它首先不起作用以及为什么它起作用?或者是否有更好的解决方法?
与此同时,我选择了第二个选项。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。