多个微服务相互引用本地可运行,但打包时报错找不到对应类。
这是因为引用了可运行的jar包。
解决办法1,将公共类单独提到一个模块中,可运行的jar包不要直接引用。
解决办法2,打包时其实会生成两个jar包,一个可运行的jar包,一个可引用的jar包,默认是重名,所以覆盖了。此时将可执行换个名称后,原引用的服务就不会报错。同时执行的时候,执行重新名称的执行jar包。
pom中
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>exec</classifier>
</configuration>
</plugin>
</plugins>