重复类 org.intellij.lang.annotations.Identifier com.intellij:annotations:12.0) 和 org.jetbrains:annotations:23.0.0)

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

我无法在 android 8.2 上构建期间解决此错误。 看到堆栈溢出答案表明我必须排除组和模块 jetbrains.注释。我正在尝试执行此操作,但没有看到注释 在实施中做到这一点。

有人可以提供解决方案来克服这个问题吗?我尝试过使用 ksp 和 kapt 分别。

我期待一个成功的构建,但冲突的 com.intellij:annotations:12.0 和 org.jetbrains:annotations:23.0.0 阻止我这样做。 Gradle构建项目文件如下:android版本Android Studio Hedgehog | 2023.1.1 补丁 1 版本 #AI-231.9392.1.2311.11255304,建于 2023 年 12 月 27 日



     plugins {
       id("com.android.application") version "8.2.1" apply false
       id("org.jetbrains.kotlin.android") version "1.9.22" apply false
       id("org.jetbrains.kotlin.plugin.parcelize")  version "1.9.22" apply false
       id("org.jlleitschuh.gradle.ktlint") version "12.1.0"

       }
     Gradle build module file is 
     plugins {
        id("com.android.application")
        id("org.jetbrains.kotlin.android") version "1.9.22" apply false
        id("kotlin-kapt")
        // id("com.google.devtools.ksp") version "1.8.10-1.0.9" apply false
        id ("com.google.dagger.hilt.android")  version "2.50" apply false
        id ("kotlin-parcelize")


            //  alias(libs.plugins.hilt.android)
       }

android {
       namespace = "com.example.pinkeep.pwdsdata"
       compileSdk = 34

        defaultConfig {
        applicationId = "com.example.pinkeep.pwdsdata"
        minSdk = 28
        targetSdk = 34
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
        vectorDrawables {
            useSupportLibrary = true
          }

        }


    
         compileOptions {
            sourceCompatibility = JavaVersion.VERSION_17
            targetCompatibility = JavaVersion.VERSION_17
           kapt {
            includeCompileClasspath = false

             }


   
         }/*
        kotlinOptions {
        jvmTarget = "17"
          }*/
        buildFeatures {
         compose = true
        }


        composeOptions {
            kotlinCompilerExtensionVersion = "1.5.10"
           }
         
         }

     dependencies {

        implementation("androidx.core:core-ktx:1.12.0")
        implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0")
        implementation("androidx.activity:activity-compose:1.8.2")
        
        implementation ("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3")
        implementation("org.jetbrains:annotations:23.0.0")

        implementation("androidx.navigation:navigation-compose:2.7.7")
        
        implementation ("androidx.navigation:navigation-fragment-ktx:2.7.7")
        implementation ("androidx.navigation:navigation-ui-ktx:2.7.7")
        implementation("com.google.dagger:hilt-android-gradle-plugin:2.51")
        implementation("androidx.navigation:navigation-runtime-ktx:2.7.7")
        implementation("com.google.dagger:hilt-android:2.51")

           implementation( "androidx.hilt:hilt-navigation-compose:1.2.0")
       // ViewModel
          implementation ("androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0")
          implementation ("androidx.lifecycle:lifecycle-extensions:2.2.0")

        // implementation ("com.google.dagger:hilt-compiler:2.51") //ksp

       // Hilt ViewModel
           implementation ("androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03") //ksp
           implementation ("androidx.hilt:hilt-compiler:1.2.0")
           implementation ("org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.9.0") //ksp
  
     }

      
    The compilation is for java 17 

   
android build duplicates dependencies
1个回答
0
投票

jetbrains
intellij
使用不同版本的
annotations

为了在构建过程中排除其中之一,您需要将

configurations
添加到
gradle
(模块应用程序)。

configurations {
    cleanedAnnotations
    implementation.exclude group: 'org.jetbrains' , module:'annotations'
}

如果使用最新版本的 Kotlin DSL,它看起来像

configurations {
    create("cleanedAnnotations")
    implementation {
        exclude(group = "org.jetbrains", module = "annotations")
    }
}

来源

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