我试图使用IntelliJ2017 Ultimate构建/运行一个使用MapStruct的Spring Boot应用程序。这是一个分级项目。我的问题是IntelliJ似乎没有运行MapStruct注释处理器。我意识到我可以配置IntelliJ来委托Gradle构建过程(请参见此),但我希望简单地配置IntelliJ来使用APT来生成必要的类本身。
我已经为我的项目启用了APT,但是我的类仍然没有生成。
build.gradle(适用的片段):
ext {
mapstructVersion = '1.2.0.Final'
}
plugins {
id 'net.ltgt.apt' version '0.15'
}
dependencies {
// MapStruct support
implementation group: 'org.mapstruct', name: 'mapstruct-jdk8', version: mapstructVersion
annotationProcessor group: 'org.mapstruct', name: 'mapstruct-processor', version: mapstructVersion
}
是否有一些额外的,我需要做,以启用APT在这个项目?IntelliJ应该自动检测类路径中的mapstruct注释处理器吗?
我试图使用注释处理器来生成特定工厂接口的实现。这些接口如下所示: 和 注释处理器正在做正确的事情,并为每个匹配的类生成一个工厂,该工厂用相应的注释进行注释。 注释处理器的输出如下所示: 以及相应的其他类: 但是不能编译TestViewImFactory。错误消息是: “类'TestViewImplFactory'必须声明为抽象或在'ViewFactory'中实现抽象方法创建” Java说,以下是正
null 我的git和Gradle技能是初学者水平。我将非常感谢对这项任务的任何帮助。谢谢你。
我喜欢使用Lombok,但它需要在IDEs设置中启用注释处理器。因为开发人员使用不同的IDE,CI/CD有自己的编译流程,而且我真的不想解释初级开发人员为什么需要选中此复选框,我正在寻找一种方法来避免选中此复选框。理想的情况下,我想让一个年轻人来运行git clone,然后/格拉德卢跑。Gradle是否可以完全设置注释处理器(无需手动单击)? 如果它能在比IntelliJ IDEA更多的地方工作,
我正在使用IntelliJ 15.0.6和SpringBoot 1.4.3。版本,Gradle 2.14和Groovy 2.3.11。 我从IntelliJ收到以下消息: 我尝试了StackOverFlow、官方文档和JavaCodeGeeks,但没有成功。 这是我的配置文件: 以及我申请的相关部分。yaml文件: 如果从配置文件中删除ConfigurationProperties,则消息将消失。
我的处理器中有一个简单的注释,如下所示: 这适用于java文件,但一旦我将文件转换为kotlin,注释的导入就不再有效。为什么? 我需要改变什么才能让他的注释也在Kotlin中工作?从文档中,我可以看到kotlin与java注释100%兼容,所以我有点困惑这里有什么问题...如果处理器不工作,需要调整以与kotlin一起工作,我会理解,但我不知道为什么导入本身不工作... 我说的图书馆在这里:ht
我有两个这样的域类。 我也有两门这样的Dto课。 所以我制作了一个映射器类StudentMapper,它扩展了GenericMapper。 但是我在编译Mapper时出错了。 " StudentDto没有可访问的构造函数." 这些代码有什么问题? 我希望学生是不可修改的。使用lombok和mapstruct的最佳方式是什么? 您可以从这里获得源代码。https://github.com/jangd