moduleA是具有依赖关系的动态要素模块,该依赖关系是aar lib。
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':app')
implementation(name:'lib', ext:'aar')
}
它构建成功并安装在模拟器上,但是每当我要创建应用程序捆绑包时,都会出现以下错误:
Modules 'base' and 'moduleA' contain entry 'res/drawable/xyz.xml' with different content.
如果我应该在应用程序模块中重命名xyz.xml,则会出现错误:
../moduleA/build/intermediates/metadata_feature_manifest/fullDebug/processFullDebugManifest/metadata-feature/AndroidManifest.xml:61:13-63:50: AAPT: error: resource drawable/xyz (aka my.app.main.drawable/xyz) not found.
这是Plaid's modularization article中突出显示的问题之一。
要解决它,我必须在应用程序模块中创建一个空的xyz.xml,但是在创建应用程序捆绑包时,出现错误:
Modules 'base' and 'moduleA' contain entry 'res/drawable/xyz.xml' with different content.
问题是什么,如何解决?
base
和moduleA
两个模块似乎都依赖于相同的AAR。
相反,将AAR仅作为模块base
的依赖项。 moduleA
应该能够通过模块base
的传递依赖关系找到资源。