简体   繁体   English

Firestore依赖性错误波动

[英]Firestore dependency error flutter

I have this app that is working perfectly. 我有这个运行良好的应用程序。 Now i need to add firestore functionality and it fails to build. 现在,我需要添加Firestore功能,但无法构建。 Console error: 控制台错误:

Launching lib\main.dart on Phone in debug mode...
Configuration 'compile' in project ':app' is deprecated. Use 
'implementation' instead.
registerResGeneratingTask is deprecated, use 
registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use 
registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use 
registerGeneratedFolders(FileCollection)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task 
':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> java.lang.RuntimeException: java.lang.RuntimeException: 
com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or -- 
debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 3s
Gradle build failed: 1
Exited (sigterm)

The error comes after adding the line implementation 'com.google.firebase:firebase-firestore:17.1.0' in the app/build.gradle app / build.gradle中添加行implementation 'com.google.firebase:firebase-firestore:17.1.0'后出现错误

dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso- 
core:3.0.1'
compile 'com.google.firebase:firebase-core:16.0.3'
implementation 'com.google.firebase:firebase-auth:16.0.3'
implementation 'com.google.firebase:firebase-firestore:17.1.0'  //if I comment out this line the app compiles and builds normally. 
//Also I can use FirebaseAuth in the app so I don't think I have wrongly configured Firebase
}

Gradlew logs Gradlew日志

      Task :app:compileDebugJavaWithJavac
Putting task artifact state for task ':app:compileDebugJavaWithJavac' into context took 0.0 secs.
file or directory 'C:\Users\rober\OneDrive\Documents\VS\appname\android\app\src\debug\java', not found
Skipping task ':app:compileDebugJavaWithJavac' as it is up-to-date (took 0.117 secs).

:app:compileDebugJavaWithJavac (Thread[Task worker for ':' Thread 3,5,main]) completed. Took 0.136 secs.
:app:transformClassesWithDexBuilderForDebug (Thread[Task worker for ':' Thread 3,5,main]) started.

> Task :app:transformClassesWithDexBuilderForDebug
Putting task artifact state for task ':app:transformClassesWithDexBuilderForDebug' into context took 0.0 secs.
Skipping task ':app:transformClassesWithDexBuilderForDebug' as it is up-to-date (took 0.162 secs).

:app:transformClassesWithDexBuilderForDebug (Thread[Task worker for ':' Thread 3,5,main]) completed. Took 0.162 secs.
:app:transformDexArchiveWithExternalLibsDexMergerForDebug (Thread[Daemon worker Thread 7,5,main]) started.

> Task :app:transformDexArchiveWithExternalLibsDexMergerForDebug
Putting task artifact state for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' into context took 0.0 secs.
Executing task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug' (up-to-date check took 0.077 secs) due to:
  Task has failed previously.
All input files are considered out-of-date for incremental task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

:app:transformDexArchiveWithExternalLibsDexMergerForDebug (Thread[Daemon worker Thread 7,5,main]) completed. Took 1.029 secs.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output.

I have even tried running it in Android studio and still nothing. 我什至尝试在Android Studio中运行它,但还是一无所获。 Adding other dependencies like cloud storage and cloud messaging and the app builds normally. 添加其他依赖项( cloud storagecloud messaging ,应用程序将正常构建。 But after adding the firestore line, the error appears 但是在添加firestore行之后,出现错误

Finally found an answer in another post on Stackoverflow still These lines of code should be added in build.gradle file (Module: app). 终于在Stackoverflow的另一篇文章中找到了答案。这些代码行应添加到build.gradle文件中(模块:app)。

android {
    defaultConfig {
       multiDexEnabled true
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM