idea導入maven工程出現大量錯誤,包括聚合工程中,導入後,出現pom.xml中定義的版本管理,在其他的子產品中的pom.xml中出現錯誤
原因是導入的僅僅是一個maven項目,單是還不是一個聚合工程,可以檢視右側的maven發現剛導入的時候是隻要一個父工程的,如下圖,你也可以通過,項目的結構來檢視
檢視項目的結構如下
通用剛導入的時候是隻要一個parent父工程
那麼這個時候就需要我們手動的來将所有的module一個一個添加進來,方法如下:
選擇父工程下的子子產品,一個一個的添加
直到所有的module都添加進來以後,點選ok,如果此時點選ok報錯了,那就直接點選取消,項目還是會加進來的,不用理他
在檢視的時候就可以看到所有的子產品都添加進來了
接下來需要将resources進行标記為資源檔案(如果不進行标記會報錯):方法有兩種
方式一:在項目結構中将resoures進行标記,一個一個标記
方式二:用下圖進行一個一個的标記
選擇resoures檔案夾滑鼠右擊:
找到下圖的:
直到檔案夾出現一個小書欄的圖示就ok了
同時最好将resources資源目錄的檔案夾都标記一下:
其标記之後的檔案如下:
标記的原因是:我之前沒有标記,在配置掃描mapper接口的包的時候,idea直接點選到的位置是這個resources中的檔案夾,導緻,項目啟動後通路一直報錯:Invalid bound statement (not found),當時檢視編譯之後的檔案,沒有問題,接口檔案和這個xml檔案都copy到了一起了,就一直很納悶,原來是這個問題
原因就是:接口所在的檔案夾和這個xml所在的檔案夾在用一個(也要求同一個),而又沒有标記為排除,導緻idea以為你的掃描的是resources中的檔案,注意這個掃描不是掃描編譯之後的
如果不是導入的maven項目,而是建立的maven項目就沒有這個問題了
如果子子產品的pom.xml中版本管理的jar還是報錯,就在父工程中将版本管理的标簽先暫時注釋掉,讓maven加載/下載下傳依賴
最後更新maven工程,整個maven工程/聚合工程就不會報錯了,就可以運作了,搞定,(* ̄︶ ̄)!