mapstruct 运行时出现 java.lang.ClassNotFoundException

解决办法:当前mavan模块必须直接导入mapstruct的jar包坐标,不能通过依赖传递来引用

一般项目都是最外层的parent pom导入mapstruct mavn版本依赖

然后common模块引入mapstruct 的jar包,service再依赖common中的mapstruct。这样就会导致这个问题。

也可能是maven编译插件没加

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <annotationProcessorPaths>
                        <path>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                            <version>${org.projectlombok.version}</version>
                        </path>
                        <path>
                            <groupId>org.mapstruct</groupId>
                            <artifactId>mapstruct-processor</artifactId>
                            <version>${org.mapstruct.version}</version>
                        </path>
                    </annotationProcessorPaths>
                </configuration>
            </plugin>

猜你喜欢

转载自blog.csdn.net/qq_62767608/article/details/131586179
今日推荐