首页 > 解决方案 > java.lang.ClassNotFound:在路径上找不到类“android.support.multidex.MultiDexApplication”:DexPathList

问题描述

我正在尝试在我的 react-native 应用上启用 multidex,但在启动应用时出现错误。

我已经做了android官方文档中的步骤:https ://developer.android.com/studio/build/multidex

我的 build.gradel (android/app/build.gradel)

 defaultConfig {
        ....
        versionName "1.0"
        multiDexEnabled true
    }

    ...

    dependencies {
      implementation 'com.android.support:multidex:1.0.3'

      implementation fileTree(dir: "libs", include: ["*.jar"])

      implementation "com.facebook.react:react-native:+"  // From node_modules

      implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"

       ...
    }

还有我的 AndroidManifest.xml:

<application
  android:name="android.support.multidex.MultiDexApplication"

  android:label="@string/app_name"
  android:icon="@mipmap/ic_launcher"
  android:roundIcon="@mipmap/ic_launcher_round"
  android:allowBackup="false"
  android:theme="@style/AppTheme">

  ...

</application>

我不明白问题是什么,为什么在我启动 de app 时错误不断发生。

我正在使用 react-native V0.62.2

标签: androidreact-nativeandroid-multidex

解决方案


java.lang.ClassNotFound:在路径上找不到类“android.support.multidex.MultiDexApplication”:DexPathList

implementation 'com.android.support:multidex:1.0.3'

<application
  android:name="android.support.multidex.MultiDexApplication"

AndroidX用 androidx 命名空间中的包替换原始支持库 API。所以尝试

<application
  android:name="androidx.multidex.MultiDexApplication"

供参考

你应该打电话

 implementation 'androidx.multidex:multidex:2.0.1'

然后Clean-Rebuild-Run


推荐阅读