我们使用的是mapstruct 1.3.1FINAL(与lombok v1.18.4结合使用,如果这很重要的话(,生成的类没有编译,因为表达式映射中使用的静态方法的导入没有生成。有线索吗?
@Mapping(target = "value", expression = "java(ValueUtil.getValue(sourceValue))")
生成的代码有编译错误,因为缺少ValueUtil的导入:
request.setValue( ValueUtil.getValue(sourceValue) );
我终于拿到了,试了一下Sjaak写的东西。
@Mapper(imports = { ValueUtil.class })
导入成功了。如果Deepaks的答案也有效,我们将进行测试。
请尝试使用ValueUtil的完全限定类名,即packagename。ValueUtil。这将为mapstruct提供上下文以定位类。
您可以将导入语句添加到@Mapper
注释中,这正是针对此类情况。签出文档。