Spring boot 没法识别其他模块的类

问题描述

在spring boot环境下,主模块在使用其他模块的类时,在编辑器IDEA运行时能够通过。但是使用maven打包时无法通过,报错类找不到,但实际上类是存在的

问题解决

发现其他模块打包时用的是spring的插件进行打包

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
</build>

这样进行打包出来的jar包是以spring运行的目录结构进行的打包,打包出来的jar,没法被其他模块进行引入使用。需要使用普通的打包,或者在插件下面增加配置如下

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
        </plugins>
    </build>

这样打出来的jar是普通结构, 不包含其他引入包的jar, 能够被其他模块进行引入使用,不会报无法找到类的错误


版权声明:本文为qq_21361809原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。