問題描述:新創建maven項目後,在父工程中dependencyManagement時,會報紅線錯誤,刷新後還是報紅,例如:${spring.version}爆紅: Maven使用dependencyManagement元素來進行依賴版本的管理。具體來說,maven沿著父子層向上尋找,直到找到dep ...
問題描述:
新創建maven項目後,在父工程中dependencyManagement時,會報紅線錯誤,刷新後還是報紅,
例如:${spring.version}
爆紅:
Maven使用dependencyManagement元素來進行依賴版本的管理。
具體來說,maven沿著父子層向上尋找,直到找到dependencyManagement元素的項目,子項目就會使用dependencyManagement中所指定的版本號。所以說,父工程只是進行依賴的管理,即對jar包的版本進行統一管理,並不實現引入。
因此,當子工程需要使用相應的jar引入依賴即可,此時才是真正的使用相應jar,才會去進行下載。
這樣設計的好處:
多個子項目引用同一依賴時,避免了在每個子項目中進行版本設置,只需要在父項目中進行版本的設定即可,當需要進行版本更新時,只需要在父項目中進行更新升級。當然,雖然父項目對版本進行了聲明,當子項目需要自己的版本時,只需要聲明version版本。
問題的解決:
方法1:先將dependencyManagement標簽註釋掉。讓maven去把jar下載到本地倉庫,之後再加上dependencyManagement標簽即可解決。
方法2:不去進行處理,在子工程需要使用相應的jar時引入依賴即可,這時會自動去下載jar。