色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Gradle版本目錄功能的簡單應用

科技綠洲 ? 來源:Java技術指北 ? 作者:Java技術指北 ? 2023-09-30 11:12 ? 次閱讀

版本帝 Gradle 最新版本已經到了 8.1.1 ,你是不是還在用著 Gradle 3 的功能?今天我們了解一下 Gradle 7.0 之后推出的新功能 Version Catalog 版本目錄。


0. 概述

Gradle 版本目錄是 Gradle7 中引入的新功能。使用 Gradle 版本目錄,您可以在擁有多個模塊時更輕松地管理依賴項和插件。您不必對各個 build 文件中的依賴項名稱和版本進行硬編碼,也不必在每次需要升級依賴項時都更新每個條目,而是可以創建一個包含依賴項的中央版本目錄。

1. 創建版本目錄文件

首先創建一個版本目錄文件。在根項目的 gradle 文件夾中,創建一個名為 libs.versions.toml 的文件。Gradle 默認會在 libs.versions.toml 文件中查找目錄,因此我們建議使用此默認名稱。

注意:您可以更改目錄文件名;但是,這需要更改 build 文件,因此不建議這樣做。

libs.versions.toml 文件中,添加以下內容:

[versions]

[libraries]

[bundles]

[plugins]
  • versions部分用于聲明可以被依賴項引用的版本
  • libraries部分用于聲明坐標的別名
  • bundles部分用于聲明依賴包
  • plugins部分用于聲明插件

2. 遷移依賴項

先看一下之前我們是如何引入依賴項的:

dependencies {
    implementation 'com.jcraft:jsch:0.1.55'
}

遷移到版本目錄后的引入方式:

# libs.versions.toml 文件
[versions]
jsch = "0.1.55"

[libraries]
jsch = { group = "com.jcraft", name = "jsch", version.ref = "jsch" }
# build.gradle 文件
dependencies {
   implementation libs.jsch
}

3. 別名規范

從上面的簡單例子中,我們可以從libs中通過別名jsch獲取 jsch 的依賴項。下面介紹幾種復雜的例子:

別名訪問名稱
guavalibs.guava
commons-lang3libs.commons.lang3
androidx.awesome.liblibs.androidx.awesome.lib

在聲明依賴項的別名時建議使用 kebab-case(例如 commons-lang3),以便在 build 文件中獲得更好的代碼補全幫助。

4. 打包依賴項

如果有多個依賴項強關聯,必須同時引用的情況,如下:

dependencies {
    implementation 'org.junit.jupiter:junit-jupiter-api:5.9.3'
    implementation 'org.junit.jupiter:junit-jupiter-engine:5.9.3'
    implementation 'org.junit.jupiter:junit-jupiter-params:5.9.3'
}

我們可以在libs.versions.toml 文件中使用bundles將其打成一個包:

[versions]
jupiter = "5.9.3"

[libraries]
junit-jupiter-api = { group = "org.junit.jupiter", name = "junit-jupiter-api", version.ref = "jupiter" }
junit-jupiter-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine", version.ref = "jupiter" }
junit-jupiter-params = { group = "org.junit.jupiter", name = "junit-jupiter-params", version.ref = "jupiter" }

[bundles]
junit-jupiter = ["junit-jupiter-api", "junit-jupiter-engine", "junit-jupiter-params"]

然后在build.gradle中引用:

dependencies {
    implementation libs.junit.jupiter
}

5. 遷移插件

遷移插件與依賴項的遷移一樣,在 libs.versions.toml 文件的 [versions] 和 [plugins] 部分,為每個插件添加一個條目。然后將 build.gradle 文件中 plugins{} 代碼塊內的聲明替換為相應的目錄名稱。

以下代碼段展示了移除插件之前的 build.gradle 文件:

plugins {
   id("com.android.application")
}

遷移后:

[versions]
androidGradlePlugin = "7.4.1"

[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
plugins {
   id(libs.plugins.android.application)
}

6. 小結

以上就是對 Gradle 版本目錄功能的簡單應用,統一管理依賴項版本,十分方便。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模塊
    +關注

    關注

    7

    文章

    2713

    瀏覽量

    47496
  • 編碼
    +關注

    關注

    6

    文章

    944

    瀏覽量

    54839
  • 插件
    +關注

    關注

    0

    文章

    329

    瀏覽量

    22446
  • gradle
    +關注

    關注

    0

    文章

    26

    瀏覽量

    723
收藏 人收藏

    評論

    相關推薦

    gradle安裝與配置unity

    ://gradle.org/install/)并下載適用于你的操作系統的最新版本Gradle。根據你的操作系統,選擇相應的發行版并根據指示進行
    的頭像 發表于 12-07 14:48 ?2246次閱讀

    Android Studio與Gradle深入

    ://jcenter.bintray.com/" }  下載不到特定的版本  Maven 和 Gradle 都會有一個緩存庫,默認安裝的情況下,是在用戶根目錄下的 .m2 或者 .gradle
    發表于 08-31 17:58

    HarmonyOS初步探索04:使用DevEco Studio時設置Gradle倉庫代替

    解決內部環境或企業內網環境問題,經常訪問Maven倉庫比較困難,此時可以設置Gradle倉庫倉庫。1)在用戶目錄新建一個 .gradle文件夾,某些 我的機器登錄 帳戶是lwx48xxxx,那么具體
    發表于 12-15 14:26

    DevEco報錯不能順利進入gradle8.0怎么解決?

    報錯內容為:此版本中使用了已棄用的 Gradle 功能,使其與 Gradle 8.0 不兼容。翻譯一下,大概有些人說這個中外使用了Gradle
    發表于 04-21 11:15

    DevEco Studio自動配置gradle的方法分享

    方法①在項目右鍵 Find in Path輸入gradle-5.4.1-all.zip方法②下載gradle-5.4.1-all.zip解壓至不要含有中文名稱的目錄比如我解壓后的路徑是D
    發表于 06-09 10:26

    谷歌 Android Studio 和 Gradle 插件使用全新版本編號

    在 Canary 通道已正式發布。在此版本中,調整了 Android Studio 和 Gradle 插件的版本編號方案。此項變更將 Gradle 插件從 Android Studio
    的頭像 發表于 12-11 10:49 ?1626次閱讀

    簡單實用的頁面多狀態布局

    狀態:主功能完成 調用差異:無 開發版本:sdk6,DevEco Studio2.2 beta1 基線版本:Release v1.0.1 安裝教程 在moudle級別下的build.gradl
    發表于 03-21 11:21 ?6次下載
    <b class='flag-5'>簡單</b>實用的頁面多狀態布局

    簡單好用的陰影庫能實現各種陰影效果

    差異:無 開發版本:sdk6,DevEco Studio2.2 Beta1 基線版本: master分支 安裝教程 1.在項目根目錄下的build.gradle文件中, 2.在entr
    發表于 03-21 14:12 ?1次下載
    <b class='flag-5'>簡單</b>好用的陰影庫能實現各種陰影效果

    簡單的易于集成的相機Fragment

    版本:sdk6,DevEco Studio2.2 Beta1 基線版本:Release 1.0.10 安裝教程 1.在項目根目錄下的build.gradle文件中, allprojec
    發表于 03-22 13:56 ?3次下載

    簡單的照片編輯器案例分享

    項目介紹 項目名稱:Ananas 所屬系列:openharmony的第三方組件適配移植 功能:一個簡單的照片編輯器 項目移植狀態:主功能完成 調用差異:無 開發版本:sdk6,DevE
    發表于 03-23 09:35 ?0次下載
    <b class='flag-5'>簡單</b>的照片編輯器案例分享

    gradle和gradlew的區別?

    你會注意到輸出里打印了 Gradle版本,它對應著你運行的 gradle 命令在設備中的 Gradle 安裝包版本。這聽起來有點廢話,但
    的頭像 發表于 12-13 09:57 ?1639次閱讀

    Gradle入門知識之Gradle詳解

    大家回想一下自己第一次接觸`Gradle`是什么時候? 相信大家也都是和我一樣,在我們打開第一個AS項目的時候, 發現有很多帶gradle字樣的文件:`setting.gradle, build.
    的頭像 發表于 03-30 10:47 ?2530次閱讀
    <b class='flag-5'>Gradle</b>入門知識之<b class='flag-5'>Gradle</b>詳解

    Gradle入門知識之Gradle語法1

    很多開發喜歡把`Gradle`簡單定義為一種構建工具,和`ant,maven`等作用類似, 誠然Gradle確實是用來做構建,但是如果簡單得把Gr
    的頭像 發表于 03-30 10:54 ?1001次閱讀
    <b class='flag-5'>Gradle</b>入門知識之<b class='flag-5'>Gradle</b>語法1

    Gradle入門知識之Gradle語法2

    很多開發喜歡把`Gradle`簡單定義為一種構建工具,和`ant,maven`等作用類似, 誠然Gradle確實是用來做構建,但是如果簡單得把Gr
    的頭像 發表于 03-30 10:54 ?737次閱讀

    Gradle中的版本使用

    文章。 Java 中的版本處理 在了解 Gradle 中的 sourceCompatiblity 和 targetCompatibility 之前, 我們先來看看 Java 在編譯的時候,是怎么處理
    的頭像 發表于 09-25 15:32 ?587次閱讀
    主站蜘蛛池模板: 精品日韩欧美一区二区三区| 国产AV白丝爆浆在线播放| a在线观看免费视频| 久久精品国产亚洲AV蜜臀| 丫鬟粗大狠狠贯穿h| 高H纯肉NP 弄潮NP男男| 日本久久中文字幕| 成人在线视频免费| 日韩精品一区二区中文| av女优快播| 欧美大jiji| z00兽200俄罗斯| 日本无翼恶漫画大全优优漫画| a在线观看免费视频| 欧美精品一区二区在线电影| 99精品观看| 欧美精品一卡二卡| 差差差差差差差差免费观看| 日本边添边摸边做边爱边| yellow免费| 三级黄在线播放| 国产SUV精品一区二区883| 无码区国产区在线播放| 国内精品偷拍在线观看| 一个人色导航| 麻豆国产成人AV在线| 99久久综合国产精品免费| 欧美一区二区激情视频| 俄罗斯9一14 young处| 无码人妻精品国产婷婷| 黄色软件视频app| 91精品国产91| 日本护士喷水| 国产学生无码中文视频一区| 亚洲色欲国产AV精品综合| 久久成人免费大片| 99er热精品视频国产免费| 日本xxxxxx片免费播放18| 国产成人免费高清在线观看| 亚洲AV无码一区二区三区牛牛| 久久不射网|