记录几个使用org.mapstruct的坑
这个错误信息表明 Spring Boot 在尝试自动装配 com.ruoyi.wms.controller.AreaController 中的 convert 字段时遇到了问题。convert 字段是一个 com.ruoyi.wms.convert.AreaConvert 类型的对象。Spring Boot 无法找到这个类型的 bean,所以无法完成自动装配。因为他喵的新版本idea所使用的jav
记录几个使用org.mapstruct的坑
第一个 spring找不到AreaConvert这个Bean AreaConvert没有被spring管理
Description:
Field convert in com.ruoyi.wms.controller.AreaController required a bean of type ‘com.ruoyi.wms.convert.AreaConvert’ that could not be found.
The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)
Action:
Consider defining a bean of type ‘com.ruoyi.wms.convert.AreaConvert’ in your configuration.
Disconnected from the target VM, address: ‘127.0.0.1:55462’, transport: ‘socket’
Process finished with exit code 1
这个错误信息表明 Spring Boot 在尝试自动装配 com.ruoyi.wms.controller.AreaController 中的 convert 字段时遇到了问题。convert 字段是一个 com.ruoyi.wms.convert.AreaConvert 类型的对象。Spring Boot 无法找到这个类型的 bean,所以无法完成自动装配。
解决方案:
找到启动类写上 scanBasePackages={"com.xxx"}
来到 项目主pom文件 添加依赖
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.4.2.Final</version> <!-- 使用最新的稳定版本 -->
</dependency>
</dependencies>
</dependencyManagement>
最主要一点
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version> <!-- 使用兼容的版本 -->
<configuration>
<source>1.8</source> <!-- 根据你的 JDK 版本设置 -->
<target>1.8</target>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.4.2.Final</version>
</path>
<!-- 添加其他你项目中使用的注解处理器 -->
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
千万不要粗心 我粗心了 趴了俩小时候坑
第二个 新版本idea所使用的java compilier编译器,lombok用不来, 得是 javac
如果这个配置好了 又出现了新的错误
java: No implementation was created for InventoryMovementConvert due to having a problem in the erroneous element java.util.ArrayList. Hint: this often means that some other annotation processor was supposed to process the erroneous element. You can also enable MapStruct verbose mode by setting -Amapstruct.verbose=true as a compilation argument.
那么好 打开你的idea设置
-Djps.track.ap.dependencies=false
塞进去
完成
因为他喵的 新版本idea所使用的java compilier编译器,lombok用不来, 得是 javac 淦
拜拜兄弟们 凌晨5点 睡觉
更多推荐
所有评论(0)