我正在研究一个具有自定义项目结构的gradle android项目。我们使用sourceSets.main apis为“AndroidManifest.xml”,“res”和其他人制作映射。这个设置没有问题,所有功能都可以正常工作。
在项目中,我们计划实施动态功能模块。作为项目配置的一部分,我遵循了android文档https://developer.android.com/studio/projects/dynamic-delivery#feature_build_config中提到的所有步骤。
作为指令的一部分,必须将基本模块作为动态特征模块的依赖项,如下所示
依赖{
// Declares a dependency on the base module, ':app'.
implementation project(':app')
}
当我编译项目时,构建失败并出现以下错误,(“KSApp”是我的主项目名称,“dynamic_feature”是动态功能模块)
“带路径项目':KSApp'在项目中找不到':dynamic_feature'。”
有人可以解释一下,出了什么问题,如何将基础模块作为我在动态功能模块中的依赖?
我尝试了什么:
注意 :
我能够在Android工作室中创建的常规投影中成功实现动态特征模块。我只在具有自定义项目结构的项目中看到问题。
问题在于引用基础模块形式子模块。由于我的项目有自定义android结构,基本模块在根项目文件夹中。在这种情况下,要从子模块引用基础模块,应使用以下方法,
依赖{
implementation project(':')
}
这是解决问题的方法。