由于模块中的重复类,Android构建失败了

发布于 2025-02-02 13:01:02 字数 4522 浏览 2 评论 0原文

嗨,我试图用Mapbox,Google Play服务位置API和导航作为该应用程序的主要导航构建应用程序。当我尝试构建该应用程序时,由于重复的类错误,构建失败了。我正在使用Android Studio 2021.2.1补丁1和Gradle版本7.3.3。

错误:

重复类Javax.activation.activationDataFlavor在模块Jakarta.activation-api-1.2.1(jakarta.activation:jakarta.activation-api-api:1.2.1)和javax.activivation-activivation-activation-1.2.0(com。太阳。激活:Javax.Activation:1.2.0) 重复的类Javax.activation.commandinfo在模块中发现了jakarta.activation-api-1.2.1(jakarta.activation:jakarta.activation-api:1.2.1)和javax.activation-activation-1.2.0激活:1.2.0) Duplicate class javax.activation.CommandInfo$Beans found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation :javax.activation:1.2.0) 重复的类Javax.activation.commandinfo $ beans $ 1 $ 1在模块jakarta.activation-api-1.2.1(jakarta.activation:jakarta.activation-api-api:1.2.1)和javax.activation.activation.activation-1.2.0(com.sun。激活:javax.activation:1.2.0) 重复的类Javax.activation.CommandMap在模块中发现的jakarta.activation-api-1.2.1(jakarta.activation:jakarta.activation-activation-api:1.2.1)和javax.activation-activation-1.2.0 .Activation:1.2.0)

完整的构建错误

[build.gradle:module:module:module]

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
}

android {
    compileSdk 32

    defaultConfig {
        applicationId "com.example.myapplication"
        minSdk 21
        targetSdk 32
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

    buildFeatures {
        viewBinding true
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = '1.8'
    }
}

dependencies {

    implementation 'androidx.core:core-ktx:1.7.0'
    implementation 'androidx.appcompat:appcompat:1.4.1'
    implementation 'com.google.android.material:material:1.6.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'

    testImplementation 'junit:junit:4.13.2'

    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'

    // Location Google Play Services
    implementation 'com.google.android.gms:play-services-location:19.0.1'

    // Navigation Component
    def nav_version = "2.4.2"
    implementation "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"
    implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
    implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

    // Mapbox SDK
    implementation 'com.mapbox.maps:android:10.5.0'

    def lifecycle_version = "2.4.1"
    // ViewModel
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    // LiveData
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"

    def activity_version = "1.4.0"
    implementation "androidx.activity:activity-ktx:$activity_version"
    def fragment_version = "1.4.1"
    implementation "androidx.fragment:fragment-ktx:$fragment_version"

    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.6.21"
}

[settings。 Gradle]

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven {
            url 'https://api.mapbox.com/downloads/v2/releases/maven'
            authentication {
                basic(BasicAuthentication)
            }
            credentials {
                // Do not change the username below.
                // This should always be `mapbox` (not your username).
                username = "mapbox"
                // Use the secret token you stored in gradle.properties as the password
                password = MAPBOX_DOWNLOADS_TOKEN
            }
        }
    }
}
rootProject.name = "My Application"
include ':app'

Hi I was trying to build an app with mapbox, google play service location API and navigation as my main navigation for the app. When I tried to build the app, the build is failed due to duplicate class error. I am using Android studio 2021.2.1 Patch 1 and gradle version 7.3.3.

Error:

Duplicate class javax.activation.ActivationDataFlavor found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation:javax.activation:1.2.0)
Duplicate class javax.activation.CommandInfo found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation:javax.activation:1.2.0)
Duplicate class javax.activation.CommandInfo$Beans found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation:javax.activation:1.2.0)
Duplicate class javax.activation.CommandInfo$Beans$1 found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation:javax.activation:1.2.0)
Duplicate class javax.activation.CommandMap found in modules jakarta.activation-api-1.2.1 (jakarta.activation:jakarta.activation-api:1.2.1) and javax.activation-1.2.0 (com.sun.activation:javax.activation:1.2.0)

Full build error

[build.gradle:module]

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
}

android {
    compileSdk 32

    defaultConfig {
        applicationId "com.example.myapplication"
        minSdk 21
        targetSdk 32
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

    buildFeatures {
        viewBinding true
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = '1.8'
    }
}

dependencies {

    implementation 'androidx.core:core-ktx:1.7.0'
    implementation 'androidx.appcompat:appcompat:1.4.1'
    implementation 'com.google.android.material:material:1.6.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'

    testImplementation 'junit:junit:4.13.2'

    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'

    // Location Google Play Services
    implementation 'com.google.android.gms:play-services-location:19.0.1'

    // Navigation Component
    def nav_version = "2.4.2"
    implementation "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"
    implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
    implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

    // Mapbox SDK
    implementation 'com.mapbox.maps:android:10.5.0'

    def lifecycle_version = "2.4.1"
    // ViewModel
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    // LiveData
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"

    def activity_version = "1.4.0"
    implementation "androidx.activity:activity-ktx:$activity_version"
    def fragment_version = "1.4.1"
    implementation "androidx.fragment:fragment-ktx:$fragment_version"

    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.6.21"
}

[settings.gradle]

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven {
            url 'https://api.mapbox.com/downloads/v2/releases/maven'
            authentication {
                basic(BasicAuthentication)
            }
            credentials {
                // Do not change the username below.
                // This should always be `mapbox` (not your username).
                username = "mapbox"
                // Use the secret token you stored in gradle.properties as the password
                password = MAPBOX_DOWNLOADS_TOKEN
            }
        }
    }
}
rootProject.name = "My Application"
include ':app'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

温柔女人霸气范 2025-02-09 13:01:02

build.gradle

实现“ androidx.navigation:navigation-afigation-safe-args-gradle-plugin:$ nav_version”

And then, add this line to `settings.gradle`:

classpath'androidx.navigation:导航 - 安全 - 阿尔格斯 - 杰布林:2.4.2'

示例:

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

    buildscript {
        dependencies {
            classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.4.2'
        }
    }
}

详细信息:
https://developer.android.com/jetroid.com/jetroid.com/jetpack/androidx/releases/navigation >

Remove this line from build.gradle:

implementation "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"

And then, add this line to `settings.gradle`:

classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.4.2'

Example:

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

    buildscript {
        dependencies {
            classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.4.2'
        }
    }
}

Details:
https://developer.android.com/jetpack/androidx/releases/navigation

决绝 2025-02-09 13:01:02
    buildscript {
            dependencies{
                classpath ("androidx.navigation:navigation-safe-args-gradle-plugin:2.7.7")
            }
   }

只需将此代码代码放入您的项目级构建中。

    buildscript {
            dependencies{
                classpath ("androidx.navigation:navigation-safe-args-gradle-plugin:2.7.7")
            }
   }

Just put this code code inside your project-level build.gradle it's work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文