第一个 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点 睡觉

Logo

快速构建 Web 应用程序

更多推荐