我在使用名称为 App Bundle 的 Google 新功能构建我们的应用程序时遇到问题.
当我运行 ./gradlew app:packageProductionReleaseBundle --stacktrace
命令时,我收到:
Execution failed for task ':app:packageProductionReleaseBundle'.
java.util.concurrent.ExecutionException: com.android.tools.build.bundletool.exceptions.ValidationException: Error validating module 'base'.
...
LONG STACK TRACE...
...
Caused by: com.android.tools.build.bundletool.exceptions.BundleFileTypesException$FileUsesReservedNameException: File 'root/res/drawable/adoceansdk_close_interstitial_button.png' uses reserved file or directory name 'res'.
at com.android.tools.build.bundletool.validation.BundleFilesValidator.validateModuleFile(BundleFilesValidator.java:112)
at com.android.tools.build.bundletool.validation.ValidatorRunner.lambda$validateBundleModules$6(ValidatorRunner.java:73)
at com.google.common.collect.ImmutableList.forEach(ImmutableList.java:406)
at com.android.tools.build.bundletool.validation.ValidatorRunner.validateBundleModules(ValidatorRunner.java:73)
原因是我们使用的.jar 中的外部库。
如何在不删除此库的情况下修复它?
提前感谢您的回答。
最佳答案
如果要在 Android 应用程序中使用此外部库,我认为它应该导出为 AAR,而不是 JAR。参见 https://developer.android.com/studio/projects/android-library
关于Android App Bundle 构建失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50279346/