主要原因:
是因為自己定制的starter在打包時(package)用了spring-boot-maven-plugin,即在你的定制starter工程的pom.xml中有如下配置:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
這樣打出的包,就是按着spring boot的打包方式設定classpath,相對目錄,資源目錄等。
當你用另一個spring boot項目使用這個定制的starter的jar包時。就會有問題 ,因為認為你這個starter是一個普通的jar包。
這樣就無法找到你的類定義
解決辦法:
刪除自定義starter中的pom.xml中的打包插件設置,采用缺省的jar打包方式。即可解決這個問題