Android Studio 添加和删除 Library Module

近日想弄一个 Android 快速开发的模版,以后直接作为一个 Library Module 引入到新项目中,加快开发速度。在实际操作之后碰到了几个问题,现在把整个流程记录下来,方便以后再碰到时快速处理。

创建一个 Module

在要添加依赖的项目中点击菜单 File -> New -> Import Module

将 Module 添加到现有的项目的依赖

改完名字后点击 Finish 就完成了导入一个 Module ,这时需要把新加的这个 Module 与现有的项目依赖在一起。

添加完了点击 OK 之后,Studio 会报一个错误, Error:Dependency Demo:template:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: XXXX
出现这个错误的原因是因为被依赖的Module的此时还是一个Application,从 Module 的build.gradle文件里面可以看到:

apply plugin: ‘com.Android.application’

所以这里要将application改成依赖库的属性,具体如下:

apply plugin: ‘com.android.library’

改好之后又会报一个错误:
Error:Library projects cannot set applicationId. applicationId is set to ‘com.zgh.appdevtemplate’ in default config.
这是因为被依赖的库 Module,此时是作为一个库存在的,而 Module 的 applicationId 是仍然存在的,作为一个库不允许设置 applicationId,需要将 builde.gradle — android — defaultConfig中的 applicationId 删除,删掉之后再次编译就OK了。这时添加的 Module 就作为一个库依赖到了项目中。

到这里,在项目中添加一个依赖库就全部完成了,如果用起来一切正常当然是最好,但是有可能会出现一个问题,那就是依赖库有它自己的依赖,而我们的项目也有其他的依赖,如果这二者产生冲突,可以用下面的方法解决:
我们可以在gradle中通过transitive配置依赖避免这个问题。
我们可以修改这行

compile project(‘:my-library‘)

compile(project(‘:my-library‘)){
transitive=false;
}

这个问题就可以避免。Done!

上面的是给项目添加依赖库的方法,那么如果想要把添加的依赖库删掉的话怎么做呢?

彻底删除项目中依赖库

因为AndroidStuduio加入对Library Module的安全管理机制,所以不能直接右键项目找到Delete(Delete菜单压根找不到)进行删除。

解决办法:
在项目列表直接右键你要删除的 Library Module(其他类型 Module 也可以这样操作),找到菜单 Open Module Settings,在弹出的 Project Structure 窗口中找到要删除的 Library Module,点击左上角的 - 号图标,移除后点击OK,这时 Library Module 失去依赖,最后右键项目中的 Library Module 这时可以看到 Delete 菜单了,点击进行最后一步的删除,搞定!



这几步做下来如果发现 Module 的文件夹还在项目里面,可能还需要删除 settings.gradle 文件里面的 include 对应的包,去掉之后就会发现那个文件夹消失了,搞定!

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值