如何添加Map Struct处理器而不删除其他处理器路径?

问题描述 投票:0回答:1

我想在我的项目中使用Map Struct,但是当我在maven-compiler-plugin中实现它时,其他所有annotationProcessorPaths都从项目中删除了(最重要的是Lombok)。但经过数小时的研究,我找不到如何在不使用的情况下添加处理器

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <annotationProcessorPaths>
            <path>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct-processor</artifactId>
                <version>${org.mapstruct.version}</version>
            </path>
            <path>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.36</version>
            </path>
            <path>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok-mapstruct-binding</artifactId>
                <version>0.2.0</version>
            </path>
        </annotationProcessorPaths>
        <compilerArgs>
            <compilerArg>
                -Amapstruct.defaultComponentModel=spring
            </compilerArg>
        </compilerArgs>
    </configuration>
</plugin>

好吧,我在那里添加了 lombok,但现在 Hikari CP 抛出了问题,我想如果我解决了 Hikari 的问题,其他技术将再次出现问题,我不想总是修补我的项目。不使用处理器如何使用?

感谢您的阅读<3

java maven mapping lombok mapstruct
1个回答
0
投票

不添加

annotationProcessorPaths
maven-compiler-path
将使用项目类路径上可用的所有注释处理器。

因此,您需要将它们添加到项目依赖项中 - 如果仅包含注释处理器,则可以在

runtime
范围内 - 就像
mapstruct-processor

但是使用较新的 JDK,您必须提供注释处理器列表或使用参数:

-proc:full

https://inside.java/2023/10/23/quality-heads-up/

https://inside.java/2024/06/18/quality-heads-up/

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.