?程序包 com.xxx.common.utils不存在或者xxx找不到符號
- 我們項目中一般都是會分成多個module模塊,做到解耦,方便后續做微服務拆分模塊,可以直接就每個模塊進行打包拎出來執行部署
- 這樣就會有模塊之間的調用,比如API模塊會被Service模塊調用,被調用的模塊,我們都是用maven將要用到的模塊打成jar包,需要調用的模塊,在pom.xml文件中引入其模塊坐標即可
? - service啟動編譯時報錯:程序包com.xxx.xxx.不存在和找不到符號加粗樣式。
- 原因:SpringBoot工程打包編譯時,會生成兩種jar包,一種是普通的jar,另一種是可執行jar。默認情況下,這兩種jar的名稱相同,在不做配置的情況下,普通的jar先生成,可執行jar后生成,造成可執行jar會覆蓋普通的jar。而Service模塊無法依賴API模塊的可執行jar,所以編譯失敗:程序包不存在。
- 解決:在所有需要被依賴的module工程中,pom.xml文件中加入配置<configuration>即可:
- 添加后,再install就成功了
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><classifier>exec</classifier><skip>true</skip></configuration></plugin></plugins></build>