Я ничего не изменил, и теперь мой проект не работает. Я получаю эту ошибку с утра:
- Что пошло не так:
Не удалось выполнить задачу ': app: transformClassesWithMultidexlistForDebug'.
com.android.build.api.transform.TransformException: ошибка при генерации основного списка dex.
Я попытался реализовать multiDexEnabled. В свой build.gradle я добавил multiDexEnabled так:
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.myApp"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
multiDexEnabled true
versionCode 8
versionName "1.3"
ndk {
abiFilters "armeabi-v7a", "x86"
}
}
Это мои зависимости
dependencies {
implementation project(':react-native-firebase')
implementation project(':react-native-video')
implementation project(':react-native-vector-icons')
implementation project(':react-native-touch-id')
implementation project(':react-native-picker')
implementation(project(':react-native-maps')) {
exclude group: 'com.google.android.gms', module: 'play-services-base'
exclude group: 'com.google.android.gms', module: 'play-services-maps'
}
implementation 'com.google.android.gms:play-services-base:+'
implementation 'com.google.android.gms:play-services-maps:+'
implementation project(':react-native-keychain')
implementation project(':react-native-image-picker')
implementation project(':react-native-google-analytics-bridge')
implementation project(':react-native-device-info')
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
implementation 'com.android.support:multidex:1.0.3'
implementation "com.facebook.react:react-native:+" // From node_modules
implementation "com.google.firebase:firebase-core:16.0.4"
implementation "com.google.firebase:firebase-messaging:17.3.4"
implementation 'me.leolin:ShortcutBadger:1.1.21@aar'
}
Также я меняю свое приложение для MultiDexApplication так:
import android.support.multidex.MultiDexApplication;
public class MainApplication extends MultiDexApplication implements ReactApplication {
...
}
А это трассировка стека ошибки
FAILURE: сборка не удалась, исключение.
Что пошло не так:
Не удалось выполнить задачу ': app: transformClassesWithMultidexlistForDebug'.
com.android.build.api.transform.TransformException: ошибка при генерации основного списка dex.
Попробуйте:
Запустите с параметром --info или --debug, чтобы получить больше вывода журнала. Запустите --scan, чтобы получить полную информацию.
Исключение составляют:
org.gradle.api.tasks.TaskExecutionException: не удалось выполнить задачу ': app: transformClassesWithMultidexlistForDebug'.
в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:100)
в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute (ExecuteActionsTaskExecuter.java:70)
в org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute (OutputDirectoryCreatingTaskExecuter.java:51)
в org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute (SkipUpToDateTaskExecuter.java:62)
в org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute (ResolveTaskOutputCachingStateExecuter.java:54)
в org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute (ValidatingTaskExecuter.java:60)
в org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute (SkipEmptySourceFilesTaskExecuter.java:97)
в org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute (CleanupStaleOutputsExecuter.java:87)
в org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute (ResolveTaskArtifactStateTaskExecuter.java:52)
в org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute (SkipTaskWithNoActionsExecuter.java:52)
в org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute (SkipOnlyIfTaskExecuter.java:54)
в org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute (ExecuteAtMostOnceTaskExecuter.java:43)
в org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute (CatchExceptionTaskExecuter.java:34)
в org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker $ 1.run (DefaultTaskGraphExecuter.java:248)
в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:336)
в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:328)
в org.gradle.internal.progress.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:199)
в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:110)
в org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute (DefaultTaskGraphExecuter.java:241)
в org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute (DefaultTaskGraphExecuter.java:230)
в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.processTask (DefaultTaskPlanExecutor.java:123)в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.access $ 200 (DefaultTaskPlanExecutor.java:79)
в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker $ 1.execute (DefaultTaskPlanExecutor.java:104)
в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker $ 1.execute (DefaultTaskPlanExecutor.java:98)
в org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute (DefaultTaskExecutionPlan.java:626)
в org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask (DefaultTaskExecutionPlan.java:581)
в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.run (DefaultTaskPlanExecutor.java:98)
в org.gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute (ExecutorPolicy.java:63)
в org.gradle.internal.concurrent.ManagedExecutorImpl $ 1.run (ManagedExecutorImpl.java:46)
в org.gradle.internal.concurrent.ThreadFactoryImpl $ ManagedThreadRunnable.run (ThreadFactoryImpl.java:55)
Причина: java.lang.RuntimeException: com.android.build.api.transform.TransformException: Ошибка при создании основного списка dex.
в com.android.builder.profile.Recorder $ Block.handleException (Recorder.java:55)
на com.android.builder.profile.ThreadRecorder.record (ThreadRecorder.java:104)
на com.android.build.gradle.internal.pipeline.TransformTask.transform (TransformTask.java:212)
в org.gradle.internal.reflect.JavaMethod.invoke (JavaMethod.java:73)
в org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute (IncrementalTaskAction.java:46)
в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:39)
в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:26)
в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter $ 1.run (ExecuteActionsTaskExecuter.java:121)
в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:336)
в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:328)
в org.gradle.internal.progress.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:199)
в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:110)
в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction (ExecuteActionsTaskExecuter.java:110)
в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:92)
... еще 29
Вызвано: com.android.build.api.transform.TransformException: Ошибка при генерации основного списка dex.
в com.android.build.gradle.internal.transforms.D8MainDexListTransform.transform (D8MainDexListTransform.kt: 127)
на com.android.build.gradle.internal.pipeline.TransformTask $ 2.call (TransformTask.java:221)
на com.android.build.gradle.internal.pipeline.TransformTask $ 2.call (TransformTask.java:217)
на com.android.builder.profile.ThreadRecorder.record (ThreadRecorder.java:102)
... еще 41
Вызывается: com.android.builder.multidex.D8MainDexList $ MainDexListException: com.android.tools.r8.errors.CompilationError: Тип программы уже присутствует: com.google.android.gms.internal.measurement.zzsh
на com.android.builder.multidex.D8MainDexList.generate (D8MainDexList.java:87)
в com.android.build.gradle.internal.transforms.D8MainDexListTransform.transform (D8MainDexListTransform.kt: 114)
... еще 44
Вызывается: com.android.tools.r8.errors.CompilationError: Тип программы уже присутствует: com.google.android.gms.internal.measurement.zzsh
на com.android.tools.r8.utils.ProgramClassCollection.resolveClassConflictImpl (ProgramClassCollection.java:64)
на com.android.tools.r8.utils.ProgramClassCollection.lambda $ create $ 0 (ProgramClassCollection.java:25)на com.android.tools.r8.utils.ProgramClassCollection.create (ProgramClassCollection.java:24)
на com.android.tools.r8.graph.LazyLoadedDexApplication $ Builder.build (LazyLoadedDexApplication.java:121)
на com.android.tools.r8.dex.ApplicationReader.read (ApplicationReader.java:122)
на com.android.tools.r8.dex.ApplicationReader.read (ApplicationReader.java:86)
на com.android.tools.r8.GenerateMainDexList.run (GenerateMainDexList.java:40)
на com.android.tools.r8.GenerateMainDexList.run (GenerateMainDexList.java:110)
на com.android.builder.multidex.D8MainDexList.generate (D8MainDexList.java:83)
... еще 45
Пожалуйста, помогите, я не знаю, что мне не хватает.
И спасибо за любой совет, который вы можете дать мне.