在我的多模塊maven項目中,所有模塊都依賴於我自己的「common」模塊,例如,模塊「A」具有此依賴性「common 」。而「通用」模塊具有spring-boot-starter-test
依賴關係。但是,當我在此「A」模塊中編寫單元測試時,它顯示未導入測試依賴項。然後我檢查依賴關係,發現沒有導入spring-boot-starter-test
。我想問爲什麼?在我的意義上,模塊「A」參考「常見」,「常見」參考spring-boot-starter-test
,所以模塊「A」應參考spring-boot-starter-test
,但事實並非如此。順便說一句,儘管這個spring-boot-starter-test
其他依賴通過hirachy很好地工作。有誰知道它爲什麼?先謝謝你。依賴項spring-boot-starter-test未在多個模塊中繼承maven項目
0
A
回答
2
最有可能在模塊「A」依賴spring-boot-starter-test
有範圍test
。這種範圍的相關性不是傳遞性的。請參閱依賴關係範圍部分https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html。 最好的解決方案是依賴管理。見依賴管理
簡單地說,你需要創建parrent模塊,並聲明依賴同治sectoin:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.example</groupId>
<artifactId>A</artifactId>
<version>1.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
然後繼承父的模塊和剛剛宣佈的依賴,而不version
和scope
<dependencies>
<dependency>
<groupId>com.example</groupId>
<artifactId>A</artifactId>
</dependency>
</dependencies>
+0
謝謝。這似乎是我沒有足夠的maven知識 – Yun
相關問題
- 1. 如何讓我的子項目在多模塊Maven項目中繼承超級項目的依賴項版本?
- 2. 如何在maven多模塊項目中共享依賴項?
- 3. sbt多模塊項目:依賴項目
- 4. Maven的繼承依賴模塊
- 5. 多模塊項目中的Maven測試依賴項
- 6. 在Maven中添加模塊依賴項
- 7. maven在多模塊項目中建立依賴關係的jar
- 8. 在Eclipse多模塊項目中缺少Maven依賴關係
- 9. maven項目中未包含Maven項目的日誌依賴項
- 10. Maven多模塊項目中的源依賴項 - 無法自行編譯模塊
- 11. 多模塊maven項目未部署可執行文件的依賴模塊Jar
- 12. Maven多模塊項目中的自動裝配依賴關係
- 13. 多模塊Maven項目中的聚合依賴關係
- 14. 檢查依賴性版本在多模塊Maven項目
- 15. 在多模塊項目上連續驗證maven依賴關係
- 16. Java項目多模塊中的依賴關係樹Eclipse中的maven項目
- 17. 依賴項屬性繼承
- 18. 在Maven Tycho多模塊項目中管理本地依賴項的版本
- 19. 如何從Visual Studio中將項目依賴項/引用從一個項目繼承到依賴項目
- 20. 依賴於多模塊Maven項目模塊時,模塊不會產生僞影
- 21. 與依賴關係處理的多模塊Maven項目
- 22. Maven多模塊項目,不解決依賴
- 23. Maven循環與多模塊項目依賴關係
- 24. Maven如何處理從父項繼承的傳遞依賴項?
- 25. 如何發佈具有項目間依賴關係的Maven多模塊項目?
- 26. 這是否複製了多模塊項目(即Spring)中的Maven依賴項?
- 27. Gradle:依賴Maven的子項目(子項目),依賴父項中的dependencyManagement項目
- 28. Maven:繼承依賴資源
- 29. Maven依賴vs多模塊?
- 30. 如何在Grails項目(IntelliJ模塊依賴項)的依賴項中使用Hibernate?
爲什麼因爲範圍是'test',所以只包含編譯時間和非可選依賴項。 –
哦......謝謝你的信息 – Yun