国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Gradle 模塊依賴中,使用 implementation 與 api 的區(qū)別

這篇具有很好參考價值的文章主要介紹了Gradle 模塊依賴中,使用 implementation 與 api 的區(qū)別。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

  • 關(guān)鍵字 api:使用關(guān)鍵字 api 聲明的依賴項表示該模塊將向依賴自己的模塊公開自己依賴的 API。這意味著其他模塊可以使用該依賴項提供的所有公共類和方法,以及該依賴項的傳遞依賴項提供的所有公共類和方法。當(dāng)需要在本模塊和依賴它的其他模塊之間共享代碼時,可以使用關(guān)鍵字 api。

    例如,如果模塊 A 使用模塊 B,并且模塊 B 使用了關(guān)鍵字 api 聲明某個依賴項,那么模塊 A 也可以使用該依賴項的所有公共 API。這通常用于需要在模塊之間共享代碼的情況,例如庫模塊和應(yīng)用程序模塊之間的依賴關(guān)系。

  • 關(guān)鍵字 implementation:使用關(guān)鍵字 implementation 聲明的依賴項表示該模塊將不向依賴自己的模塊公開自己依賴的 API。這意味著該依賴項只對該模塊本身可見,并且不會被傳遞到依賴該模塊的其他模塊。當(dāng)不需要將某個依賴項的 API 公開給其他模塊時,可以使用關(guān)鍵字 implementation。

    例如,如果模塊 A 使用模塊 B,而模塊 B 使用了關(guān)鍵字 implementation 聲明某個依賴項,那么模塊 A 將無法使用該依賴項的任何公共 API。這通常用于需要在模塊之間隔離依賴關(guān)系的情況,例如應(yīng)用程序模塊和庫模塊之間的依賴關(guān)系。

總之,使用關(guān)鍵字 api 聲明依賴項時,可以將該依賴項的公共 API 與其他模塊共享。而使用關(guān)鍵字 implementation 聲明依賴項時,可以將該依賴項限制在當(dāng)前模塊內(nèi)。


【注意】

??對依賴模塊使用關(guān)鍵字 api,并不能使本模塊能傳遞性地獲得依賴模塊依賴的所有依賴。對本模塊來說,依賴時無論是使用關(guān)鍵字 api 還是 implementation 都沒有區(qū)別。關(guān)鍵字 api 的作用只再其它模塊依賴本模塊時才會體現(xiàn)。換句話說,如果想令本模塊能傳遞性地獲得依賴模塊的依賴,那么應(yīng)該在依賴模塊的相應(yīng)依賴中使用關(guān)鍵字 api,而不是在本模塊中使用。


舉個例子。如果項目中有模塊 A、B、C、D,且 A 依賴 B、B 依賴 C、C 依賴 D。在不考慮各個模塊其它依賴的干擾的情況下。

  • 如果 B implementation C,C implementation D

    則 B 可以直接引用 C 中的類,但不能引用 D 中的類

  • 如果 B implementation C,C api D

    則 B 可以直接引用 C、D 中的類

  • 如果 A implementation B,B implementation C,C api D

    則 A 可以直接引用 B 中的類,但不能引用 C、D 中的類

  • 如果 A api B,B implementation C,C api D

    則 A 可以直接引用 B 中的類,但不能引用 C、D 中的類

也就是說,如果 B implementation C,則不管使用什么關(guān)鍵字,都無法通過 B 來依賴 C。文章來源地址http://www.zghlxwxcb.cn/news/detail-434175.html

到了這里,關(guān)于Gradle 模塊依賴中,使用 implementation 與 api 的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • springboot gradle kotlin 多模塊(或微服務(wù))統(tǒng)一依賴及版本管理和構(gòu)建不同環(huán)境打包task,docker鏡像構(gòu)建task

    springboot gradle kotlin 多模塊(或微服務(wù))統(tǒng)一依賴及版本管理和構(gòu)建不同環(huán)境打包task,docker鏡像構(gòu)建task

    在maven里可以在pom.xml中統(tǒng)一定義項目依賴,依賴版本,插件,多環(huán)境構(gòu)建,子模塊;定義packaging 為pom類型,各子模塊按需引入,并且指定環(huán)境profiles構(gòu)建。 在gradle中也可以實現(xiàn)依賴統(tǒng)一管理,各模塊按需引入,區(qū)分環(huán)境的構(gòu)建任務(wù)。 先上效果圖 統(tǒng)一定義依賴,依賴版本,插

    2024年02月04日
    瀏覽(66)
  • 關(guān)于Android Studio使用Gradle構(gòu)建時,依賴下載過慢的方案

    每個As人都應(yīng)該被gradle下載問題困擾過。網(wǎng)上也有很多類似文章教你怎么做。我也把配置貼出來。 很多文章都是把repositories閉包當(dāng)中的配置這么寫: 這個時候你配置的鏡像包沒有發(fā)揮作用。gradle下載依賴的時候會從這幾個倉庫當(dāng)中一路找下來。假如你需要下載一個 abc.jar 的依

    2024年02月04日
    瀏覽(25)
  • 【Android Gradle 插件】更新依賴方式,同時解決github三方庫引用無法使用問題

    【Android Gradle 插件】更新依賴方式,同時解決github三方庫引用無法使用問題

    目錄 首先看一下完整的 settings.gradle 依賴介紹 1、Maven 遠(yuǎn)程倉庫配置 2、目錄配置 3、完整代碼示例 二、根目錄下 build.gradle 構(gòu)建腳本分析 pluginManagement 腳本塊 , 用于 配置 Gradle 插件的 Maven 倉庫 , 配置的是 構(gòu)建過程 中 , 使用的倉庫 ; dependencyResolutionManagement 腳本塊 , 用于 配置

    2024年02月16日
    瀏覽(18)
  • 【ijkplayer】編譯 Android 版本的 ijkplayer ⑦ ( 使用 AS 打開源碼 | 重新設(shè)置 AGP 和 Gradle 版本號 | 設(shè)置依賴倉庫 | 設(shè)置依賴 | 編譯運(yùn)行 )

    【ijkplayer】編譯 Android 版本的 ijkplayer ⑦ ( 使用 AS 打開源碼 | 重新設(shè)置 AGP 和 Gradle 版本號 | 設(shè)置依賴倉庫 | 設(shè)置依賴 | 編譯運(yùn)行 )

    博客源碼 : https://download.csdn.net/download/han1202012/88215731 在 【ijkplayer】編譯 Android 版本的 ijkplayer ⑥ ( 進(jìn)入 ijkplayer-android/android 目錄 | 執(zhí)行 compile-ijk.sh 腳本完成編譯 ) 博客中 , 完成了 ijkplayer 的編譯 , 編譯后的 Android 項目源碼在 https://download.csdn.net/download/han1202012/85008881 下載 ; 下

    2024年02月12日
    瀏覽(18)
  • TypeScript extends和implements區(qū)別

    TypeScript extends和implements區(qū)別

    (被人理解是幸運(yùn)的,但不被理解未必不幸。一個把自己的價值完全寄托于他人的理解上面的人往往并無價值?!車剑?相關(guān)文章 implements是一個類實現(xiàn)一個接口用的.實現(xiàn)一個接口,必須實現(xiàn)接口中的所有方法。 比如以下代碼,定以了抽象類AbstractAnimal,然后Do

    2024年02月04日
    瀏覽(24)
  • 使用Go模塊進(jìn)行依賴管理

    摘要:本文將介紹Go語言中的模塊(module)概念,以及如何使用Go模塊進(jìn)行依賴管理。我們會探討模塊的基本概念、使用方法、配置和依賴關(guān)系管理等方面的內(nèi)容。 Go語言自2007年發(fā)布以來,一直以其簡潔、高效和強(qiáng)大的網(wǎng)絡(luò)編程能力而受到開發(fā)者的喜愛。然而,隨著項目規(guī)模

    2024年02月08日
    瀏覽(23)
  • 【Android Gradle 插件】Android 依賴管理 ① ( 依賴庫匹配 | 依賴庫查找順序及路徑 | Gradle 資源庫 )

    【Android Gradle 插件】Android 依賴管理 ① ( 依賴庫匹配 | 依賴庫查找順序及路徑 | Gradle 資源庫 )

    依賴庫匹配 : ?依賴庫由三部分組成 依賴庫分組 依賴庫名稱 依賴庫版本號 只有三者都對上 , 依賴庫才能匹配上 , 如 依賴庫分組為 androidx.appcompat ,? 依賴庫名稱為 appcompat ,? 依賴庫版本號為 1.3.1 ,? 三者由冒號隔開 ; Android 依賴庫查找路徑 : 首先 , 查找 本地的 Gradle 緩存依賴

    2024年01月17日
    瀏覽(29)
  • 如何查看Android 包依賴關(guān)系&gradle依賴管理

    如何查看Android 包依賴關(guān)系&gradle依賴管理

    關(guān)于作者:CSDN內(nèi)容合伙人、技術(shù)專家, 從零開始做日活千萬級APP。 專注于分享各領(lǐng)域原創(chuàng)系列文章 ,擅長java后端、移動開發(fā)、商業(yè)變現(xiàn)、人工智能等,希望大家多多支持。 我們繼續(xù)總結(jié)學(xué)習(xí),溫故知新。 本文講述如何查看 android 依賴庫關(guān)系。 Tasks-help-dependencies 可以看項

    2024年01月18日
    瀏覽(23)
  • gradle打包分離依賴jar

    gradle打包分離依賴jar

    正常打包的jar是包含項目所依賴的jar包資源,而且大多數(shù)場景下的依賴資源是不會頻繁的變更的,所以實際把項目自身jar和其所依賴的資源分離可以實現(xiàn)jar包瘦身,減小上傳的jar包總大小,能實現(xiàn)加速部署的效果 打包后build/libs/lib就是依賴的jar包資源 boot.jar就是不含依賴資源

    2024年01月25日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包