Android Kotlin DSL gradle 未在自定义存储库中找到依赖项

问题描述 投票:0回答:1

我目前正在将我的

build.gradle
文件转换为
build.gradle.kts
。繁重的工作已经完成,我创建了一个版本目录
libs.versions.toml
文件来处理依赖关系管理。但是,我遇到一个问题,似乎它没有选择自定义 Maven 存储库,因为应用程序无法解决四个依赖项。

我的依赖如下:

        //Dependency Injection        
        implementation(libs.hilt.android)
        kapt(libs.hilt.android)
        kapt(libs.androidx.hilt.compiler)
        annotationProcessor(libs.hilt.compiler)

        //View
        implementation(libs.androidx.activity)
        implementation(libs.androidx.constraintlayout)
        implementation(libs.customtoast)
        implementation(libs.picasso.transformations)
        implementation(libs.picasso)
        implementation(libs.qrgen)
        implementation(libs.accessibility.tools) <-- not resolved
        implementation(libs.apachecommons.text)
        implementation(libs.custom.progressindicator) <-- not resolved
        implementation(libs.decocharting)
        implementation(libs.avilibrary) <-- not resolved

        //Coroutines
        implementation(libs.coroutines.android)
        implementation(libs.coroutines.core)

        //LiveData
        implementation(libs.livedata.ktx)
        kapt(libs.livedata.lifecycle.compiler)
        implementation(libs.livedata.lifecycle.extensions)

        // ViewModel
        implementation(libs.viewmodel.ktx)
        implementation(libs.viewmodel.compose)
        implementation(libs.viewmodel.savedstate)
        implementation(libs.viewmodel.lifecycleruntime.ktx)

        //Networking
        implementation(libs.retrofit)
        implementation(libs.retrofit.gson.converter)
        implementation(libs.okhttp.logging.interceptor)
        implementation(project(":devenvironmentswitcher"))
        implementation(libs.okhttp)
        implementation(libs.gson)
        implementation(libs.gson.extras)
        implementation(libs.loopj.async)

        //UI - Compose
        implementation(libs.compose.ui)
        implementation(libs.compose.ui.preview)
        implementation(libs.compose.ui.material)
        implementation(libs.material)

        //Database
        implementation(libs.room.runtime)
        implementation(libs.room.ktx)
        kapt(libs.room.compiler.kapt)

        //Analytics
        implementation(platform(libs.firebase.bom))
        implementation(libs.firebase.crashlytics)
        implementation(libs.firebase.analytics)
        implementation(libs.firebase.performance)

        //Androidx
        implementation(libs.androidx.recyclerview)
        implementation(libs.androidx.cardview)
        implementation(libs.androidx.v4legacysupport)
        implementation(libs.androidx.browser)
        implementation(libs.androidx.exif)
        implementation(libs.androidx.multidex)
        implementation(libs.androidx.appcompat)

        //Messaging
        implementation(libs.firebase.messaging)
        implementation(libs.firebase.core)
        implementation(libs.azure.notification.handler) <-- Not resolved
        implementation(libs.azure.notification.hub)

        //Play Services
        implementation(libs.playservices.auth)
        implementation(libs.playservices.gcm)
        implementation(libs.playservices.location)
        implementation(libs.playservices.maps)
        implementation(libs.playservices.vision)
        implementation(libs.playservices.licenses)

        //Encryption
        implementation(libs.spongy.castle)
        implementation(libs.scotty.aes.crypt)

        //Testing
        testImplementation(libs.test.junit)
        testImplementation(libs.test.hilt.testing)
        testImplementation(libs.test.coroutines.test)
        testImplementation(libs.test.mockk)
        kaptTest(libs.test.hilt.compiler.testing)
        androidTestImplementation(libs.test.junit.androidx)
        androidTestImplementation(libs.test.rules)
        androidTestImplementation(libs.test.junit.ktx)
        androidTestImplementation(libs.test.espresso.core)
        implementation(libs.test.arch.testing)

        //Misc
        implementation(libs.scotty.rootbeer)
        implementation(libs.joda)
        implementation(libs.device.names)
        implementation(libs.iocard)

突出显示的依赖项将添加到

.toml
文件中,如下所示:

custom-progressindicator = { group = "com.kaopiz", name = "kprogresshud", version.ref = "progress_hud_version"}
avilibrary = { group = "com.wang.avi", name = "library", version.ref = "wang_avi_version"}
azure-notification-handler = { group = "com.microsoft.azure", name = "azure-notifications-handler", version.ref = "microsoft_notification_handler_version"}
accessibility-tools = { group = "com.novoda", name = "accessibilitools", version.ref = "novoda_accessibility_version"}

我已经处理了项目管理的依赖解析

settings.gradle.kts
,如下所示:

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()

        maven (url = "https://jitpack.io")
        maven (url = "https://dl.bintray.com/microsoftazuremobile/SDK")
        maven (url =  "https://dl.bintray.com/81813780/maven")
    }
}

您可以在此处查看自定义存储库网址。这些在旧的

build.gradle
中工作 谁能看出我做错了什么吗?

当我运行

androidDependencies
gradle 任务时,我得到以下输出:

   > Could not find com.novoda:accessibilitools:1.6.0.
     Required by:
         project :app
   > Could not find com.kaopiz:kprogresshud:1.2.0.
     Required by:
         project :app
   > Could not find com.wang.avi:library:2.1.3.
     Required by:
         project :app
   > Could not find com.microsoft.azure:azure-notifications-handler:3.5.1.
     Required by:
         project :app
android kotlin dependency-management gradle-kotlin-dsl
1个回答
0
投票

accessibilitytools、wang 的 avi 库和 kprogresshud 是非常老的库,最初托管在 jcenter 但现在不再可用。

与旧图书馆合作总是很困难。我的建议是从 github 下载源代码并尝试将它们集成到您的项目中(如果许可证允许)。当然,这会带来一些风险或代码调整。

对于 Microsoft 库,您可以在此处集成新库:https://github.com/Azure/azure-notificationhubs-android

希望这有帮助

© www.soinside.com 2019 - 2024. All rights reserved.