日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Maven中scope依赖范围和依赖的传递性

發(fā)布時(shí)間:2024/2/28 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven中scope依赖范围和依赖的传递性 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Maven中使用?scope?來(lái)指定當(dāng)前包的依賴范圍和依賴的傳遞性。常見的可選值有:compile,?provided,?runtime,?test,?system?等。scope?主要是用在?pom.xml?文件中的依賴定義部分

<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.6</version><scope>provided</scope></dependency>

compile?:為默認(rèn)的依賴有效范圍。如果在定義依賴關(guān)系的時(shí)候,沒有明確指定依賴有效范圍的話,則默認(rèn)采用該依賴有效范圍。此種依賴,在編譯、運(yùn)行、測(cè)試時(shí)均有效。

provided?:在編譯、測(cè)試時(shí)有效,但是在運(yùn)行時(shí)無(wú)效。例如:servlet-api,jsp-api運(yùn)行項(xiàng)目時(shí),容器已經(jīng)提供,就不需要Maven重復(fù)地引入一遍了。

runtime?:在運(yùn)行、測(cè)試時(shí)有效,但是在編譯代碼時(shí)無(wú)效。例如:JDBC驅(qū)動(dòng)實(shí)現(xiàn),項(xiàng)目代碼編譯只需要JDK提供的JDBC接口,只有在測(cè)試或運(yùn)行項(xiàng)目時(shí)才需要實(shí)現(xiàn)上述接口的具體JDBC驅(qū)動(dòng)。

test?:只在測(cè)試時(shí)有效,例如:JUnit。

system?:在編譯、測(cè)試時(shí)有效,但是在運(yùn)行時(shí)無(wú)效。和provided的區(qū)別是,使用system范圍的依賴時(shí)必須通過systemPath元素顯式地指定依賴文件的路徑。由于此類依賴不是通過Maven倉(cāng)庫(kù)解析的,而且往往與本機(jī)系統(tǒng)綁定,可能造成構(gòu)建的不可移植,因此應(yīng)該謹(jǐn)慎使用。systemPath元素可以引用環(huán)境變量。

?

超強(qiáng)干貨來(lái)襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的Maven中scope依赖范围和依赖的传递性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。