天天看點

maven中scope的分類scope的分類

scope的分類

  • 1.compile:預設值 他表示被依賴項目需要參與目前項目的編譯,還有後續的測試,運作周期也參與其中,是一個比較強的依賴。打包的時候通常需要包含進去
  • 2.test:依賴項目僅僅參與測試相關的工作,包括測試代碼的編譯和執行,不會被打包,例如:junit
  • 3.runtime:表示被依賴項目無需參與項目的編譯,不過後期的測試和運作周期需要其參與。與compile相比,跳過了編譯而已。例如JDBC驅動,适用運作和測試階段
  • 4.provided:打包的時候可以不用包進去,别的設施會提供。事實上該依賴理論上可以參與編譯,測試,運作等周期。相當于compile,但是打包階段做了exclude操作
  • 5.system:從參與度來說,和provided相同,不過被依賴項不會從maven倉庫下載下傳,而是從本地檔案系統拿。需要添加systemPath的屬性來定義路徑