1. 程式人生 > >【日常積累-轉】maven中scope標籤詳解

【日常積累-轉】maven中scope標籤詳解

scope的分類:
1.compile:預設值,表示被依賴專案需要參與當前專案編譯,和後續測試,執行週期也參與其中,是一個比較強的依賴。打包的時候通常需要包含進去。
2.test:依賴專案僅僅參與測試相關的工作,包括測試程式碼的編譯和執行,不會被打包,例如:junit
3.runtime:被依賴專案無需參與專案編譯,而後期測試和執行週期需要其參與。與compile相比,跳過了編譯而已。例如JDBC驅動,適用執行和測試階段
4.provided:打包的時候可以不用包進去,別的設施會提供。事實上該依賴理論上可以參與編譯,測試,執行等週期。相當於compile,但是打包階段做了exclude操作

5.system:從參與度講,和provided相同,不過被依賴項不會從maven倉庫下載,而是從本地檔案系統拿。需要新增systemPath的屬性來定義路徑。