jvm 生成项目时出错:app:checkLoggDuplicateClasses

axkjgtzd  于 2024-01-07  发布在  其他
关注(0)|答案(1)|浏览(298)

我的项目是多模块的。
当我创建项目时,我遇到了这个错误:

  1. Execution failed for task ':app:mergeExtDexDebugAndroidTest'.
  2. > Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
  3. > Failed to transform ddmlib-30.3.0.jar (com.android.tools.ddms:ddmlib:30.3.0) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=21, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
  4. > Execution failed for DexingWithClasspathTransform: C:\Users\Zakhar\.gradle\caches\modules-2\files-2.1\com.android.tools.ddms\ddmlib\30.3.0\f271cb990dc62f580b608a75c87c509683c75da9\ddmlib-30.3.0.jar.
  5. > Error while dexing.
  6. Increase the minSdkVersion to 26 or above.
  7. Execution failed for task ':app:mergeDebugJavaResource'.
  8. > A failure occurred while executing com.android.build.gradle.internal.tasks.MergeJavaResWorkAction
  9. > 2 files found with path 'google/protobuf/field_mask.proto' from inputs:
  10. - C:\Users\Zakhar\.gradle\caches\modules-2\files-2.1\com.google.protobuf\protobuf-javalite\3.21.7\82b692be08383107fd1c6d44474b56df411edd27\protobuf-javalite-3.21.7.jar
  11. - C:\Users\Zakhar\.gradle\caches\modules-2\files-2.1\com.google.protobuf\protobuf-java\3.17.2\d7eec2ad499b605f24d07f49bdcb41c801aafbfc\protobuf-java-3.17.2.jar
  12. Adding a packagingOptions block may help, please refer to
  13. https://developer.android.com/reference/tools/gradle-api/8.1/com/android/build/api/dsl/ResourcesPackagingOptions
  14. for more information
  15. Execution failed for task ':app:checkDebugDuplicateClasses'.
  16. > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
  17. > Duplicate class com.google.protobuf.AbstractMessageLite found in modules protobuf-java-3.17.2 (com.google.protobuf:protobuf-java:3.17.2) and protobuf-javalite-3.21.7 (com.google.protobuf:protobuf-javalite:3.21.7)
  18. Duplicate class com.google.protobuf.AbstractMessageLite$Builder found in modules protobuf-java-3.17.2 (com.google.protobuf:protobuf-java:3.17.2) and protobuf-javalite-3.21.7 (com.google.protobuf:protobuf-javalite:3.21.7)

字符串
我试图更改库版本,agp,build.gradle插件.
以下是我在每个build.gradle.kts模块中的代码:
应用程序:

  1. plugins {
  2. id("com.android.application")
  3. id("org.jetbrains.kotlin.android")
  4. id("com.google.gms.google-services")
  5. id("com.google.devtools.ksp")
  6. }
  7. android {
  8. namespace = "com.nutrition.caloriecountingapp"
  9. compileSdk = 34
  10. defaultConfig {
  11. applicationId = "com.nutrition.caloriecountingapp"
  12. minSdk = 21
  13. targetSdk = 34
  14. versionCode = 1
  15. versionName = "1.0"
  16. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  17. }
  18. buildTypes {
  19. release {
  20. isMinifyEnabled = false
  21. proguardFiles(
  22. getDefaultProguardFile("proguard-android-optimize.txt"),
  23. "proguard-rules.pro"
  24. )
  25. }
  26. }
  27. compileOptions {
  28. sourceCompatibility = JavaVersion.VERSION_1_8
  29. targetCompatibility = JavaVersion.VERSION_1_8
  30. }
  31. kotlinOptions {
  32. jvmTarget = "1.8"
  33. }
  34. viewBinding.isEnabled = true
  35. }
  36. val daggerVersion = "2.48"
  37. dependencies {
  38. implementation("androidx.core:core-ktx:1.12.0")
  39. implementation("androidx.appcompat:appcompat:1.6.1")
  40. implementation("com.google.android.material:material:1.10.0")
  41. implementation("androidx.constraintlayout:constraintlayout:2.1.4")
  42. implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
  43. implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
  44. implementation("com.google.android.gms:play-services-ads-lite:22.5.0")
  45. testImplementation("junit:junit:4.13.2")
  46. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  47. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  48. implementation(project(":feature_auth"))
  49. implementation(project(":feature_home"))
  50. implementation(project(":feature_search"))
  51. implementation(project(":feature_profile"))
  52. implementation(project(":core"))
  53. implementation(project(":db"))
  54. implementation(project(":network"))
  55. implementation("com.google.gms:google-services:4.4.0")
  56. // Dagger
  57. implementation("com.google.dagger:dagger:$daggerVersion")
  58. ksp ("com.google.dagger:dagger-compiler:$daggerVersion")
  59. }


:核心

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. }
  5. android {
  6. namespace = "com.nutrition.core"
  7. compileSdk = 34
  8. defaultConfig {
  9. minSdk = 21
  10. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  11. consumerProguardFiles("consumer-rules.pro")
  12. }
  13. buildTypes {
  14. release {
  15. isMinifyEnabled = false
  16. proguardFiles(
  17. getDefaultProguardFile("proguard-android-optimize.txt"),
  18. "proguard-rules.pro"
  19. )
  20. }
  21. }
  22. compileOptions {
  23. sourceCompatibility = JavaVersion.VERSION_1_8
  24. targetCompatibility = JavaVersion.VERSION_1_8
  25. }
  26. kotlinOptions {
  27. jvmTarget = "1.8"
  28. }
  29. viewBinding.isEnabled = true
  30. }
  31. dependencies {
  32. implementation("androidx.core:core-ktx:1.9.0")
  33. implementation("androidx.appcompat:appcompat:1.6.1")
  34. implementation("com.google.android.material:material:1.10.0")
  35. testImplementation("junit:junit:4.13.2")
  36. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  37. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  38. }


:db

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. id("com.google.devtools.ksp")
  5. }
  6. android {
  7. namespace = "com.test.db"
  8. compileSdk = 34
  9. defaultConfig {
  10. minSdk = 21
  11. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  12. consumerProguardFiles("consumer-rules.pro")
  13. kotlin{
  14. ksp{
  15. arg("room.schemaLocation", "$projectDir/schemas")
  16. }
  17. }
  18. }
  19. buildTypes {
  20. release {
  21. isMinifyEnabled = false
  22. proguardFiles(
  23. getDefaultProguardFile("proguard-android-optimize.txt"),
  24. "proguard-rules.pro"
  25. )
  26. }
  27. }
  28. compileOptions {
  29. sourceCompatibility = JavaVersion.VERSION_1_8
  30. targetCompatibility = JavaVersion.VERSION_1_8
  31. }
  32. kotlinOptions {
  33. jvmTarget = "1.8"
  34. }
  35. }
  36. dependencies {
  37. implementation("androidx.core:core-ktx:1.12.0")
  38. implementation("androidx.appcompat:appcompat:1.6.1")
  39. implementation("com.google.android.material:material:1.10.0")
  40. testImplementation("junit:junit:4.13.2")
  41. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  42. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  43. // Room
  44. implementation("androidx.room:room-runtime:2.6.1")
  45. ksp("androidx.room:room-compiler:2.6.1")
  46. implementation("androidx.room:room-ktx:2.6.1")
  47. // Dagger
  48. val daggerVersion = "2.48"
  49. compileOnly("com.google.dagger:dagger:$daggerVersion")
  50. ksp ("com.google.dagger:dagger-compiler:$daggerVersion")
  51. }


:feature_auth

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. id("com.google.devtools.ksp")
  5. }
  6. android {
  7. namespace = "com.nutrition.feature_auth"
  8. compileSdk = 34
  9. defaultConfig {
  10. minSdk = 21
  11. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  12. consumerProguardFiles("consumer-rules.pro")
  13. }
  14. buildTypes {
  15. release {
  16. isMinifyEnabled = false
  17. proguardFiles(
  18. getDefaultProguardFile("proguard-android-optimize.txt"),
  19. "proguard-rules.pro"
  20. )
  21. }
  22. }
  23. compileOptions {
  24. sourceCompatibility = JavaVersion.VERSION_1_8
  25. targetCompatibility = JavaVersion.VERSION_1_8
  26. }
  27. kotlinOptions {
  28. jvmTarget = "1.8"
  29. }
  30. viewBinding.isEnabled = true
  31. }
  32. dependencies {
  33. implementation("com.google.android.gms:play-services-ads:22.5.0")
  34. implementation("androidx.core:core-ktx:1.12.0")
  35. implementation("androidx.appcompat:appcompat:1.6.1")
  36. implementation("com.google.android.material:material:1.10.0")
  37. implementation ("androidx.fragment:fragment-ktx:1.6.2")
  38. // core
  39. implementation(project(":core"))
  40. // db
  41. implementation(project(":db"))
  42. // Navigation
  43. implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
  44. implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
  45. // Lifecycle
  46. val lifecycleVersion = "2.6.2"
  47. implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion")
  48. // Testing
  49. testImplementation("junit:junit:4.13.2")
  50. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  51. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  52. testImplementation("io.mockk:mockk:1.13.5")
  53. testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.7.3")
  54. // Dagger
  55. val daggerVersion = "2.48"
  56. compileOnly("com.google.dagger:dagger:$daggerVersion")
  57. ksp ("com.google.dagger:dagger-compiler:$daggerVersion")
  58. // Firebase
  59. implementation(platform("com.google.firebase:firebase-bom:32.6.0"))
  60. implementation("com.google.firebase:firebase-auth-ktx")
  61. implementation("com.google.android.gms:play-services-auth:20.7.0")
  62. implementation("com.google.firebase:firebase-firestore-ktx:24.9.1")
  63. // WorkManager
  64. val workManagerVersion = "2.9.0"
  65. implementation("androidx.work:work-runtime:$workManagerVersion")
  66. implementation("androidx.work:work-runtime-ktx:$workManagerVersion")
  67. // ViewModel
  68. implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycleVersion")
  69. }


:feature_home

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. id("kotlin-kapt")
  5. }
  6. android {
  7. namespace = "com.nutrition.feature_home"
  8. compileSdk = 34
  9. defaultConfig {
  10. minSdk = 21
  11. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  12. consumerProguardFiles("consumer-rules.pro")
  13. }
  14. buildTypes {
  15. release {
  16. isMinifyEnabled = false
  17. proguardFiles(
  18. getDefaultProguardFile("proguard-android-optimize.txt"),
  19. "proguard-rules.pro"
  20. )
  21. }
  22. }
  23. compileOptions {
  24. sourceCompatibility = JavaVersion.VERSION_1_8
  25. targetCompatibility = JavaVersion.VERSION_1_8
  26. }
  27. kotlinOptions {
  28. jvmTarget = "1.8"
  29. }
  30. viewBinding.isEnabled = true
  31. }
  32. dependencies {
  33. implementation("androidx.core:core-ktx:1.12.0")
  34. implementation("androidx.appcompat:appcompat:1.6.1")
  35. implementation("com.google.android.material:material:1.10.0")
  36. implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
  37. implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
  38. testImplementation("junit:junit:4.13.2")
  39. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  40. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  41. // Dagger
  42. val daggerVersion = "2.48"
  43. compileOnly("com.google.dagger:dagger:$daggerVersion")
  44. kapt ("com.google.dagger:dagger-compiler:$daggerVersion")
  45. implementation(project(":core"))
  46. implementation(project(":db"))
  47. // Glide
  48. implementation("com.github.bumptech.glide:glide:4.16.0")
  49. }


:feature_profile

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. }
  5. android {
  6. namespace = "com.test.feature_profile"
  7. compileSdk = 34
  8. defaultConfig {
  9. minSdk = 21
  10. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  11. consumerProguardFiles("consumer-rules.pro")
  12. }
  13. buildTypes {
  14. release {
  15. isMinifyEnabled = false
  16. proguardFiles(
  17. getDefaultProguardFile("proguard-android-optimize.txt"),
  18. "proguard-rules.pro"
  19. )
  20. }
  21. }
  22. compileOptions {
  23. sourceCompatibility = JavaVersion.VERSION_1_8
  24. targetCompatibility = JavaVersion.VERSION_1_8
  25. }
  26. kotlinOptions {
  27. jvmTarget = "1.8"
  28. }
  29. viewBinding.isEnabled = true
  30. }
  31. dependencies {
  32. implementation("androidx.core:core-ktx:1.12.0")
  33. implementation("androidx.appcompat:appcompat:1.6.1")
  34. implementation("com.google.android.material:material:1.10.0")
  35. testImplementation("junit:junit:4.13.2")
  36. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  37. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  38. }


:feature_search

  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. id("kotlin-kapt")
  5. id("kotlinx-serialization")
  6. }
  7. android {
  8. namespace = "com.nutrition.feature_search"
  9. compileSdk = 34
  10. defaultConfig {
  11. minSdk = 21
  12. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  13. consumerProguardFiles("consumer-rules.pro")
  14. }
  15. buildTypes {
  16. release {
  17. isMinifyEnabled = false
  18. proguardFiles(
  19. getDefaultProguardFile("proguard-android-optimize.txt"),
  20. "proguard-rules.pro"
  21. )
  22. }
  23. }
  24. compileOptions {
  25. sourceCompatibility = JavaVersion.VERSION_1_8
  26. targetCompatibility = JavaVersion.VERSION_1_8
  27. }
  28. kotlinOptions {
  29. jvmTarget = "1.8"
  30. }
  31. viewBinding.isEnabled = true
  32. }
  33. dependencies {
  34. implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
  35. implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
  36. implementation("androidx.core:core-ktx:1.12.0")
  37. implementation("androidx.appcompat:appcompat:1.6.1")
  38. implementation("com.google.android.material:material:1.10.0")
  39. testImplementation("junit:junit:4.13.2")
  40. androidTestImplementation("androidx.test.ext:junit:1.1.5")
  41. androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
  42. // Dagger
  43. val daggerVersion = "2.48"
  44. compileOnly("com.google.dagger:dagger:$daggerVersion")
  45. kapt("com.google.dagger:dagger-compiler:$daggerVersion")
  46. implementation(project(":core"))
  47. }
  1. plugins {
  2. id("com.android.library")
  3. id("org.jetbrains.kotlin.android")
  4. }
  5. android {
  6. namespace = "com.test.network"
  7. compileSdk = 34
  8. defaultConfig {
  9. minSdk = 21
  10. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  11. consumerProguardFiles("consumer-rules.pro")
  12. }
  13. buildTypes {
  14. release {
  15. isMinifyEnabled = false
  16. proguardFiles(
  17. getDefaultProguardFile("proguard-android-optimize.txt"),
  18. "proguard-rules.pro"
  19. )
  20. }
  21. }
  22. compileOptions {
  23. sourceCompatibility = JavaVersion.VERSION_1_8
  24. targetCompatibility = JavaVersion.VERSION_1_8
  25. }
  26. kotlinOptions {
  27. jvmTarget = "1.8"
  28. }
  29. }
  30. dependencies {
  31. }
  1. // gradle.properties
  2. # Project-wide Gradle settings.
  3. # IDE (e.g. Android Studio) users:
  4. # Gradle settings configured through the IDE *will override*
  5. # any settings specified in this file.
  6. # For more details on how to configure your build environment visit
  7. # http://www.gradle.org/docs/current/userguide/build_environment.html
  8. # Specifies the JVM arguments used for the daemon process.
  9. # The setting is particularly useful for tweaking memory settings.
  10. org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
  11. # When configured, Gradle will run in incubating parallel mode.
  12. # This option should only be used with decoupled projects. More details, visit
  13. # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
  14. # org.gradle.parallel=true
  15. # AndroidX package structure to make it clearer which packages are bundled with the
  16. # Android operating system, and which are packaged with your app's APK
  17. # https://developer.android.com/topic/libraries/support-library/androidx-rn
  18. android.useAndroidX=true
  19. # Kotlin code style for this project: "official" or "obsolete":
  20. kotlin.code.style=official
  21. # Enables namespacing of each library's R class so that its R class includes only the
  22. # resources declared in the library itself and none from the library's dependencies,
  23. # thereby reducing the size of the R class for that library
  24. android.nonTransitiveRClass=true

希望你的回答能帮助解决这个问题。

rdlzhqv9

rdlzhqv91#

在你的错误中有这样的提示:将minSdkVersion增加到26或更高。
您是否更改了minSDK版本?

相关问题