原因分析
在dependency中有相应的包,但是Maven找不到,那么最根本的原因是没引入依赖
通常,一个微服务开发中会创建两个子模块,一个用于写接口和实体类与其他微服务相互调用,另一个写业务逻辑
插件一般以下入方式引入,但是,用这个插件可以把模块直接打成Jar包直接运行,但其无法依赖,所以微服务的一个模块引用另一个模块会报错,无法找到程序包
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
解决办法
1、在接口和实体类模块的pom中修改打包插件如下,重新clean、install
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- 解决没有main函数报错unable to find main class 的问题-->
<executions>
<execution>
<phase>none</phase>
</execution>
</executions>
<configuration>
<classifier>execute</classifier>
</configuration>
</plugin>
</plugins>
</build>
2、其他类pom配置
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>execute</classifier>
</configuration>
</plugin>
</plugins>
</build>