java react-native run-android 失败并出现错误:任务':app:dexDebug'的执行失败

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/39127137/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-11-03 04:06:32  来源:igfitidea点击:

react-native run-android failed with error: Execution failed for task ':app:dexDebug'

javaandroidreact-nativebuild.gradlereact-native-android

提问by Hiren

I'm using windows 8.1. with react-native-cli: 1.0.0and react-native: 0.31.0

我正在使用 Windows 8.1。与 react-native-cli: 1.0.0react-native: 0.31.0

After adding react-native-mapsto the project, I ran command react-native upgradeand given Yto all questions. Then linked deps with rnpm linkas well as come changes to MainApplication.javafile too.

添加react-native-maps到项目后,我运行命令react-native upgrade并对所有问题给出Y。然后将 deps 与文件联系起来rnpm link,并更改MainApplication.java文件。

Here are changes to MainApplication.java:

以下是对以下内容的更改MainApplication.java

// Other imports ...
import com.airbnb.android.react.maps.MapsPackage;

public class MainApplication extends Application implements ReactApplication {

 private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
    @Override
    protected boolean getUseDeveloperSupport() {
       return BuildConfig.DEBUG;
    }

    @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
         new MainReactPackage(),
         new MapsPackage() // I have added this for react-native-maps
      );
    }
  };

 @Override
 public ReactNativeHost getReactNativeHost() {
   return mReactNativeHost;
 }
}

Now I'm getting error when I run the command: react-native run-android

现在运行命令时出现错误: react-native run-android

λ react-native run-android                                                                    
JS server already running.                                                                    
Running C:\Program Files (x86)\Android\android-sdk/platform-tools/adb reverse tcp:8081 tcp:808
1                                                                                             
Building and installing the app on the device (cd android && gradlew.bat installDebug...      
:app:preBuild UP-TO-DATE                                                                      
:app:preDebugBuild UP-TO-DATE                                                                 
:app:checkDebugManifest                                                                       
:app:preReleaseBuild UP-TO-DATE                                                               
:react-native-maps:compileLint                                                                
:react-native-maps:copyReleaseLint UP-TO-DATE                                                 
:react-native-maps:preBuild UP-TO-DATE                                                        
:react-native-maps:preReleaseBuild UP-TO-DATE                                                 
:react-native-maps:checkReleaseManifest                                                       
:react-native-maps:preDebugAndroidTestBuild UP-TO-DATE                                        
:react-native-maps:preDebugBuild UP-TO-DATE                                                   
:react-native-maps:preDebugUnitTestBuild UP-TO-DATE                                           
:react-native-maps:preReleaseUnitTestBuild UP-TO-DATE                                         
:react-native-maps:prepareComAndroidSupportAppcompatV72301Library UP-TO-DATE                  
:react-native-maps:prepareComAndroidSupportRecyclerviewV72301Library UP-TO-DATE               
:react-native-maps:prepareComAndroidSupportSupportV42321Library UP-TO-DATE                    
:react-native-maps:prepareComFacebookFrescoDrawee0110Library UP-TO-DATE                       
:react-native-maps:prepareComFacebookFrescoFbcore0110Library UP-TO-DATE                       
:react-native-maps:prepareComFacebookFrescoFresco0110Library UP-TO-DATE                       
:react-native-maps:prepareComFacebookFrescoImagepipeline0110Library UP-TO-DATE                
:react-native-maps:prepareComFacebookFrescoImagepipelineBase0110Library UP-TO-DATE            
:react-native-maps:prepareComFacebookFrescoImagepipelineOkhttp30110Library UP-TO-DATE         
:react-native-maps:prepareComFacebookReactReactNative0310Library UP-TO-DATE                   
:react-native-maps:prepareComFacebookSoloaderSoloader010Library UP-TO-DATE                    
:react-native-maps:prepareComGoogleAndroidGmsPlayServicesBase840Library UP-TO-DATE            
:react-native-maps:prepareComGoogleAndroidGmsPlayServicesBasement840Library UP-TO-DATE        
:react-native-maps:prepareComGoogleAndroidGmsPlayServicesMaps840Library UP-TO-DATE            
:react-native-maps:prepareOrgWebkitAndroidJscR174650Library UP-TO-DATE                        
:react-native-maps:prepareReleaseDependencies                                                 
:react-native-maps:compileReleaseAidl UP-TO-DATE                                              
:react-native-maps:compileReleaseRenderscript UP-TO-DATE                                      
:react-native-maps:generateReleaseBuildConfig UP-TO-DATE                                      
:react-native-maps:generateReleaseAssets UP-TO-DATE                                           
:react-native-maps:mergeReleaseAssets UP-TO-DATE                                              
:react-native-maps:generateReleaseResValues UP-TO-DATE                                        
:react-native-maps:generateReleaseResources UP-TO-DATE                                        
:react-native-maps:mergeReleaseResources UP-TO-DATE                                           
:react-native-maps:processReleaseManifest UP-TO-DATE                                          
:react-native-maps:processReleaseResources UP-TO-DATE                                         
:react-native-maps:generateReleaseSources UP-TO-DATE                                          
:react-native-maps:processReleaseJavaRes UP-TO-DATE                                           
:react-native-maps:compileReleaseJavaWithJavac UP-TO-DATE                                     
:react-native-maps:extractReleaseAnnotations UP-TO-DATE                                       
:react-native-maps:mergeReleaseProguardFiles UP-TO-DATE                                       
:react-native-maps:packageReleaseJar UP-TO-DATE                                               
:react-native-maps:compileReleaseNdk UP-TO-DATE                                               
:react-native-maps:packageReleaseJniLibs UP-TO-DATE                                           
:react-native-maps:packageReleaseLocalJar UP-TO-DATE                                          
:react-native-maps:packageReleaseRenderscript UP-TO-DATE                                      
:react-native-maps:packageReleaseResources UP-TO-DATE                                         
:react-native-maps:bundleRelease UP-TO-DATE                                                   
:app:prepareComAndroidSupportAppcompatV72301Library UP-TO-DATE                                
:app:prepareComAndroidSupportRecyclerviewV72301Library UP-TO-DATE                             
:app:prepareComAndroidSupportSupportV42321Library UP-TO-DATE                                  
:app:prepareComFacebookFrescoDrawee0110Library UP-TO-DATE                                     
:app:prepareComFacebookFrescoFbcore0110Library UP-TO-DATE                                     
:app:prepareComFacebookFrescoFresco0110Library UP-TO-DATE                                     
:app:prepareComFacebookFrescoImagepipeline0110Library UP-TO-DATE                              
:app:prepareComFacebookFrescoImagepipelineBase0110Library UP-TO-DATE                          
:app:prepareComFacebookFrescoImagepipelineOkhttp30110Library UP-TO-DATE                       
:app:prepareComFacebookReactReactNative0310Library UP-TO-DATE                                 
:app:prepareComFacebookSoloaderSoloader010Library UP-TO-DATE                                  
:app:prepareComGoogleAndroidGmsPlayServicesBase840Library UP-TO-DATE                          
:app:prepareComGoogleAndroidGmsPlayServicesBasement840Library UP-TO-DATE                      
:app:prepareComGoogleAndroidGmsPlayServicesMaps840Library UP-TO-DATE                          
:app:prepareNativeBaseDemoReactNativeMapsUnspecifiedLibrary UP-TO-DATE                        
:app:prepareOrgWebkitAndroidJscR174650Library UP-TO-DATE                                      
:app:prepareDebugDependencies                                                                 
:app:compileDebugAidl UP-TO-DATE                                                              
:app:compileDebugRenderscript UP-TO-DATE                                                      
:app:generateDebugBuildConfig UP-TO-DATE                                                      
:app:generateDebugAssets UP-TO-DATE                                                           
:app:mergeDebugAssets UP-TO-DATE                                                              
:app:generateDebugResValues UP-TO-DATE                                                        
:app:generateDebugResources UP-TO-DATE                                                        
:app:mergeDebugResources UP-TO-DATE                                                           
:app:bundleDebugJsAndAssets SKIPPED                                                           
:app:processDebugManifest UP-TO-DATE                                                          
:app:processDebugResources UP-TO-DATE                                                         
:app:generateDebugSources UP-TO-DATE                                                          
:app:processDebugJavaRes UP-TO-DATE                                                           
:app:compileDebugJavaWithJavac UP-TO-DATE                                                     
:app:compileDebugNdk UP-TO-DATE                                                               
:app:compileDebugSources UP-TO-DATE                                                           
:app:preDexDebug UP-TO-DATE                                                                   
:app:dexDebug                                                                                 
  Unknown source file : UNEXPECTED TOP-LEVEL EXCEPTION:                                         
  Unknown source file : com.android.dex.DexException: Multiple dex files define Landroid/support/v7/appcompat/R$anim;                                                                         
  Unknown source file :   at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)                                                                                             
  Unknown source file :   at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)  
  Unknown source file :   at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)  
  Unknown source file :   at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)      
  Unknown source file :   at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)           
  Unknown source file :   at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)                                                                                          
  Unknown source file :   at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)        
  Unknown source file :   at com.android.dx.command.dexer.Main.run(Main.java:277)               
  Unknown source file :   at com.android.dx.command.dexer.Main.main(Main.java:245) 

  Unknown source file :   at com.android.dx.command.Main.main(Main.java:106)       
:app:dexDebug FAILED                                                                          

FAILURE: Build failed with an exception.                                                      

* What went wrong:                                                                            
Execution failed for task ':app:dexDebug'.                                                    
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: 
Process 'command 'C:\Program Files\Java\jdk1.8.0_102\bin\java.exe'' finished with non-zero exit value 2                                                                                     

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

BUILD FAILED                                                                                  

Total time: 50.673 secs                                                                       
Could not install the app on the device, read the error above for details.                    
Make sure you have an Android emulator running or a device connected and have set up your Android development environment:                                                  
https://facebook.github.io/react-native/docs/android-setup.html             

I have no idea about this error. Saw some questions similar to this but could not find the answer. I'm new to React-Native and Android development so I'm having hard time understanding this stuff.

我不知道这个错误。看到一些类似的问题,但找不到答案。我是 React-Native 和 Android 开发的新手,所以我很难理解这些东西。

回答by Abdulaziz Alkharashi

This problem usually comes from gradle dependency in new components, i can see you have installed react-native-maps

这个问题通常来自新组件中的 gradle 依赖,我可以看到你已经安装了react-native-maps

you can solve it by cleaning the project.

您可以通过清理项目来解决它。

  1. In your React Native project:
  1. 在你的 React Native 项目中:

cd android/ && ./gradlew clean

cd android/ && ./gradlew 干净

  1. go back and try run it again.
  1. 返回并尝试再次运行它。

cd .. && react-native run-android

cd .. && react-native run-android

回答by Rajan Maharjan

to be more specific:

更具体:

in your MainApplication.javafile, change,

在您的MainApplication.java文件中,更改,

protected boolean getUseDeveloperSupport() { { <-----

on this

在这

public boolean getUseDeveloperSupport() { <-----

that got it building for me, at least

至少它为我建造

回答by Burak Tokak

The problem for me was that, the packager was running in the background from the previous build.

对我来说问题是,打包程序在上次构建的后台运行。

You might just try to close the packager server and start it with

您可能只是尝试关闭打包服务器并启动它

react-native run-android

That was successful for my problem.

这对我的问题是成功的。

回答by Surbhit Rao

Use these steps

使用这些步骤

1.) cd android

2.) gradle clean

3.) Now run the project.

1.) 光盘安卓

2.) gradle 干净

3.) 现在运行项目。

This error occurs in my system whenever the emulator is updated.

每当更新模拟器时,我的系统就会发生此错误。

回答by Rajon Tanducar

just run this from root of your project with cmd:

只需使用 cmd 从项目的根目录运行它:

cd android && gradlew clean

cd android && gradlew clean