生成主 dex 列表时反应本机错误

React Native Error while generating the main dex list

我尝试了 Whosebug 中提供的大部分答案以及 github 添加

multiDexEnabled true 
dexOptions{javaMaxHeapSize "4g"} 

但是没有运气,我认为我的问题出在依赖项上。当我 运行 cd android ./gradlew clean 然后 gradlew assembldebug 或 react-native 运行-android 时,我得到的实际错误是

What went wrong: Execution failed for task':app:transformClassesWithMultidexlistForDebug'. com.android.build.api.transform.TransformException: Error while generating the main dex list.

在 Android Studio 中构建显示以下错误:

Program type already present: androidx.versionedparcelable.CustomVersionedParcelable

添加

android.useAndroidX=true
android.enableJetifier=true

导致更多问题,因为我在项目中使用的大多数 react-native 库都没有翻译成 androidx

Execution failed for task ':react-native-navigation:compileReactNative57_5DebugJavaWithJavac'

所以我打算从androidx撤退,请问有什么办法吗?

经过一天的研究,找不到正确的方法从 androidx 回滚并手动将所有 react-native 依赖项转换为 androidx 似乎是一项乏味的工作,但感谢这个库 jetifier 我能够通过 运行

做到这一点
npm i --save-dev jetifier
npx jetify