背景:

项目有需求,将自己写的模块作为一个module给到大项目使用,所以准备把自己的项目打包成aar包。

一、如何将独立项目打包成aar:

1、修改module下的application 为library:

 ——>

2、修改Manifest.xml文件如下:

删掉下面这些以及apk入口:

3、修改代码中的switch语句为if语句。

4、如果代码有配混淆的话,参考下面注释掉该属性。

5、双击下面截图中的assembleDebug即可执行打包过程。(如果项目里有集成ButterKnife的话,理论上讲会报错,解决可以参考该博客第二部分。)


但是,坑爹的是,由于使用了ButterKnife(版本:8.8.1)插件,导致构建的时候一直报如下错误(截图来自网络,自己报错的截图忘记截了。)

然后各种百度,但是找到的都是17年的比较老的,没法使用,故写下自己躺坑的过程。

二、Buttknife报错处理:

1、在项目gradle文件里加入如下:(版本号8.4.0、8.5.0、8.5.1都可以)

classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'

2、在module里gradle里添加如下即可:

apply plugin: 'com.jakewharton.butterknife'

3、将应用的BindView这里的 R 都换成 R2,只在注解这里这样换,其他地方不要换:

4、先Sync一下项目,然后rebuild 多次。

重点(亲测有效):记得rebuild一两次之后找到报错的类,点进去,随便找个报错的行,然后手动删除R2,再输一次R2,然后发现这个类不报错了。(无意中发现的。)

最新文章

  1. IOS第四课——Autolayout_View
  2. 让mingw gdb支持STL,并自动load .gdbinit
  3. 【Spark】----Spark on Yarn
  4. BPMN 2.0规范
  5. Matlab 取子矩阵
  6. unique_ptr简谈
  7. JVM知识在离线数据中的运用
  8. S2_OOP第三章
  9. Build path contains duplicate entry
  10. SkylineGlobe7.0.1版本 通过鼠标左右平移模型对象
  11. C++桥接模式【转】
  12. 《剑指offer》-判断平衡二叉树
  13. kbmMWLog同时输出日志到多个日志管理器
  14. 禁止用键盘左右箭头,去切换PageControl页签
  15. python之socket编写
  16. 【BZOJ】【1923】【Sdoi2010】外星千足虫
  17. Openerp 7.0消息推送
  18. [LeetCode 题解]: Add Two Numbers
  19. 排序算法汇总(java实现,附源代码)
  20. 安卓topbar编码实战

热门文章

  1. 【坑】js语法中一些小细节 不注意也出坑 随笔记下 留待后查
  2. 基于 Keil MDK 移植 RT-Thread Nano
  3. Trie Service
  4. ant-design-vue有v-decorator时defaultValue无效
  5. [RN] React Native ScrollView自动滑动到顶部
  6. Linux 系统管理——系统安全及应用
  7. Goldbach’s Conjecture(信息学奥赛一本通 1622)
  8. Kubernetes中如何让Deployment更新镜像
  9. npx 使用教程
  10. 是什么让我走上Java之路?