是否有任何特殊的配置来获取eclipse以生成Mapstruct映射器?当然,他们没有被生成。
它们确实在gradle构建中生成,但我无法生成它们,所以我可以在开发中使用它们。
我将此添加到我的build.gradle:
plugins {
id "net.ltgt.apt" version "0.10"
}
dependencies {
compile "org.mapstruct:mapstruct-jdk8:$mapstructVersion"
apt "org.mapstruct:mapstruct-processor:$mapstructVersion"
}
我还为MapStruct添加了eclipse插件(虽然我相信这实际上不是必需的 ???)
然后我去了Project>属性> Java编译器>注释处理:
但是.apt_generated是空的,我错过了什么?
我正在使用:
Eclipse:版本:Oxygen Release(4.7.0)Build id:20170620-1800
MapStruct版本1.2.0.CR1(也尝试1.1.0.FINAL)
答案 0 :(得分:7)
因此,经过一些搜索,我确定解决方案是您必须在gradle中手动运行eclipse
任务。如果成功,您应该看到类似的内容:
解决方案来自阅读https://github.com/tbroyer/gradle-apt-plugin文档,其中指出:
使用Buildship时,您必须手动运行eclipseJdtApt和eclipseFactorypath任务来生成Eclipse配置文件,然后运行eclipseJdt任务或手动启用注释处理:在项目属性→Java编译器→注释处理中,选中“启用注释处理”。请注意,虽然eclipse任务依赖于所有这些任务,但是这一任务与Buildship不兼容,因此您必须显式运行上述两个或三个任务而不运行eclipse任务。
它声明eclipse
任务与buildship不兼容,但似乎已修复(我运行eclipse
任务并没有问题):
但我确实遇到了cleanEclipse
任务的问题,这似乎与Buildship不兼容。
毕竟,在*MapperImpl.java
<project_root>/.apt_generated
个类