问题描述
在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, 能够被其他模块进行引入使用,不会报无法找到类的错误