Maven中的scope元素用于定義依賴項在不同構建階段的可見性和使用范圍。它可以設置在pom.xml文件中的
compile(默認):依賴項在所有編譯、測試和運行階段都可見。它會被包含在輸出的JAR文件中,并且可以被其他項目的依賴項所使用。
provided:依賴項在編譯和測試階段可見,但在運行期間由應用程序容器或Java運行時提供。這意味著在部署應用程序時,該依賴項不會被包含在生成的JAR文件中。
runtime:依賴項在運行和測試階段可見,但不會被編譯。該依賴項在運行時是必需的,但在編譯時不需要,因此它不會被包含在輸出的JAR文件中。
test:依賴項僅在測試階段可見,不會被編譯和運行。它主要用于編寫單元測試。
system:依賴項類似于provided,但需要顯式地指定jar文件的路徑。這個scope對于一些無法通過Maven倉庫獲得的本地依賴項很有用。
import:該scope僅適用于
通過在