這裏是簡單的情況分解,我想知道如果我做這個最佳或如果有更好的約定。我爲了學習目的創建了一個虛擬項目。這是否複製了多模塊項目(即Spring)中的Maven依賴項?
我創建了一個多模塊Maven項目。簡單地說,父母POM與兩個同胞孩子POMS,一個是服務層,另一個是網絡層。
最終結果目標是在Web項目的目標文件夾中具有完整的WAR,我可以將其部署到Tomcat中。
這裏是我不清楚的地方: - 服務項目和Web項目都需要使用Spring。 Service項目需要使用Spring,因爲它是依賴注入的目的。我需要一個簡單的Dog類,並將它自動注入到DogService對象中。這一切工作正常。 - 然後我需要將DogService對象自動注入到Dog控制器中。 Dog控制器存在於多模塊結構中的Web項目中。這也可以正常工作,因爲我已經在Service項目的Web項目中聲明瞭一個依賴關係,因此所有的Service JARs都包含在Web項目的最終構建的WAR中。
1)是否有一種方法可以簡單地爲兩個子項目聲明Spring依賴項,而無需在每個子項POM.xml中聲明依賴項?我只是想確保我沒有複製資源。我相信這樣做的方法只是在Parent POM.xml中聲明依賴關係。
2)如果我做了上面的#1,這是創建項目的最佳方式嗎?實際上,WEB模塊是包含所有最終jar的模塊,實際上就好像SERVICE項目在Tomcat中一樣。就Tomcat'知道'而言,所有的東西都是一堆包含類的JAR文件,其中一些已經被寫入我的WEB模塊中,其中一些已經寫入了SERVICE模塊中,所有這些與JAR文件無關生產/ Tomcat環境。對或錯?
謝謝!
如果這是新的開發,通常最好使用Spring Boot的獨立jar而不是部署到外部容器中。 – chrylis