Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 没有找到适用于新Maven的方法_Java_Maven_Compiler Errors_Instanceof - Fatal编程技术网

Java 没有找到适用于新Maven的方法

Java 没有找到适用于新Maven的方法,java,maven,compiler-errors,instanceof,Java,Maven,Compiler Errors,Instanceof,我正在从Maven 2.2.1迁移到3.3.3,出现了一个错误,这似乎部分是由于奇怪的设计造成的。第行出现异常: DataSource ds = service.generatePdfDocument(dataBean.getModel(), getFormName() + "_A0024", OUTPUT_FILE_NAME, parameters); 方法的第一个参数。新马文说: no suitable method found for generatePdfDocument(java.l

我正在从Maven 2.2.1迁移到3.3.3,出现了一个错误,这似乎部分是由于奇怪的设计造成的。第行出现异常:

DataSource ds = service.generatePdfDocument(dataBean.getModel(), getFormName() + "_A0024", OUTPUT_FILE_NAME, parameters);
方法的第一个参数。新马文说:

no suitable method found for generatePdfDocument(java.lang.Object,java.lang.String,java.lang.String,java.util.Map<java.lang.String,java.lang.Object>)
找不到适合generatePdfDocument的方法(java.lang.Object、java.lang.String、java.lang.String、java.util.Map)
有两种方法符合此描述,它们仅在第一个参数的类型上有所不同:

public DataSource generatePdfDocument(EkMessage pModel, String pFormName, String pOutputFileName, Map<String, Object> parameters) throws IOException, CloneNotSupportedException {
    return this.generatePdfDocument(pModel.getXml(), pFormName, pOutputFileName, parameters);
}
public DataSource generatePdfDocument(EkMessage pModel、字符串pFormName、字符串pOutputFileName、映射参数)抛出IOException、CloneNotSupportedException{
返回此.generatePdfDocument(pModel.getXml(),pFormName,poutpFileName,参数);
}

public DataSource generatedfddocument(MessageType pMessage,String pFormName,String pOutputFileName,Map参数)抛出IOException,CloneNotSupportedException{
调试(“生成pdf文档…”);
...
}
第一个方法调用第二个方法。但是,Maven不希望接受这两个选项中的任何一个,因为dataBean.getModel()是一个泛型(dataBean扩展了DetailData):

@Getter
@塞特
公共抽象类DetailData扩展了GeneralDataBean{
私有静态最终记录器LOG=LoggerFactory.getLogger(DetailData.class);
私有T模型;
...
}

对于Maven 2.2.1,这一点过去是可以的,但是Maven 3.3.3失败了。我想知道在不使用instanceOf()的情况下重构代码的最佳方法是什么

你检查过你的依赖关系了吗?完整的错误输出是什么?太长,无法在此处发布,但两种方法都是这样:方法….ReportService.generatePdfDocument(..EkMessage,java.lang.String,java.util.Map)不适用(实际参数java.lang.Object不能通过方法调用转换为….EkMessage)抱歉,完整的错误输出日志,而不是摘录。此外,pom文件会很有帮助……您是在命令行上还是在IDE中构建的?您是否检查了依赖关系?完整的错误输出是什么?太长,无法在此处发布,但两种方法都是这样:方法….ReportService.generatePdfDocument(..EkMessage,java.lang.String,java.util.Map)不适用(实际参数java.lang.Object不能通过方法调用转换为….EkMessage)抱歉,完整的错误输出日志,而不是摘录。此外,pom文件将非常有用……您是在命令行上还是在IDE中构建的?
 public DataSource generatePdfDocument(MessageType pMessage, String pFormName, String pOutputFileName, Map<String, Object> parameters) throws IOException, CloneNotSupportedException {
    LOG.debug("Generating pdf document... ");
    ...
}
@Getter
@Setter
public abstract class DetailData<T extends Object> extends GeneralDataBean {

private static final Logger LOG = LoggerFactory.getLogger(DetailData.class);

    private T model;
...
}