簡體   English   中英

Gradle 強制依賴版本?

[英]Gradle force dependency version?

我整個上午都在想辦法解決這個問題。 我有一個 gradle 依賴樹,它引入了錯誤的版本:

    > Task :myproj:dependencyInsight
io.fabric8:kubernetes-model:4.1.0 (selected by rule)
   variant "runtime" [
      org.gradle.status = release (not requested)
      Requested attributes not found in the selected variant:
         org.gradle.usage  = java-api
   ]

io.fabric8:kubernetes-model:4.3.0 -> 4.1.0
\--- io.fabric8:kubernetes-client:4.3.0
     \--- compileClasspath

我不希望它降級到 4.1.0,但我一輩子都無法讓它停下來。 完全沒有運氣嘗試過以下方法:

configurations.all {
    resolutionStrategy {
        force 'io.fabric8:kubernetes-model:4.3.0'
    }
}

///////

dependencies {
    compile ('io.fabric8:kubernetes-client:4.3.0')
    { exclude group: 'io.fabric8', module: 'kubernetes-model', version: '4.1.0' }
}

有人知道另一種可能有幫助的解決方案嗎? 謝謝

我總是使用這種方式來強制 Gradle(6.0.1) 中的版本:

configurations.all {
        
        resolutionStrategy {
            eachDependency { DependencyResolveDetails details ->
                if (details.requested.group == 'redis.clients') {
                    details.useVersion "3.0.1"
                }
                if (details.requested.group == 'com.github.jsqlparser') {
                    details.useVersion "2.1"
                }
                if (details.requested.group == 'com.squareup.okhttp3') {
                    details.useVersion "4.0.0"
                }
                if (details.requested.group == 'com.github.pagehelper' && !details.requested.name.contains('spring-boot')) {
                    
                    details.useVersion("5.1.11")
                }
            }
        }
    }

它工作正常,希望這對你有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM