我有一个多层spring-boot架构。我的层分为api、应用程序、数据和服务。我已经在我的应用层中创建了一个配置文件,它实现了 WebMvcConfigurer
我告诉它扫描其他组件。。。我的 pom.xml
对于根项目是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.warehouse</groupId>
<artifactId>warehouse</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>warehouse</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.source>${java.version}</maven.compiler.source>
</properties>
<modules>
<module>warehouse-api</module>
<module>warehouse-data</module>
<module>warehouse-application</module>
<module>warehouse-service</module>
</modules>
<build>
<finalName>${project.artifactId}</finalName>
</build>
以及 pom.xml
数据层文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>warehouse</artifactId>
<groupId>com.example.warehouse</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<groupId>com.example.warehouse</groupId>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>warehouse-data</artifactId>
<name>warehouse_data</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.source>${java.version}</maven.compiler.source>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
问题是,我的配置文件在构建数据层包并创建jar文件时找不到它。我做错什么了吗?
我的配置文件签名和定义如下:
@Configuration
@ComponentScan(basePackages = {
"com.example.warehouse.api",
"com.example.warehouse.data",
"com.example.warehouse.service",
"com.example.warehouse.application"})
@Import({ExceptionInfrastructureWebConfig.class})
public class WarehouseConfig implements WebMvcConfigurer {}
1条答案
按热度按时间2ic8powd1#
让主方法包含
@ComponentScan
注解还有你的
WarehouseConfig
应该是这样的: