gradle plugin 01

=================先熟悉一些build命令行命令=================

查看当前stack running Activity

adb shell dumpsys activity activities | sed -En -e '/Stack #/p' -e '/Running activities/,/Run #0/p'

gradle命令build(window:gradlew mac:./gradlew)

./gradlew -v查看gradle版本
./gradlew tasks --all 查看所有任务
./gradlew clean build删除build目录后重新build
./gradlew debug 编译并打默认包,一般不用这个
./gradlew assembleDebug编译并打debug包
./gradlew assembleRelease编译并打release包
./gradlew installRelease编译打包并安装release包
./gradlew uninstallRelease卸载release包
--info查看编译详细信息 
--stacktrace查看栈信息

zsh:permission denied: ./gradlew解决办法:chmod 777 gradlew

基于文章,记录自己的理解:https://juejin.cn/post/6844904176250519565

======================效率低,编译复杂,试试这个==========

组合编译,大幅度提升编译效率

buildSrc模式的编译应该都不陌生,如果不懂百度就ok了
总体就是使用插件将两个project联系在一起,这样Aproject就可以引用Bproject中的源码

另外对插件的开发和调试会有很大帮助
1,不需要编译upload之后引用再使用,直接修改生效
2,调试方便了,因为报错会很直接,当然还是要打印控制台调试

使用

01

最外层build.gradle中
dependencies {
        classpath 'com.android.tools.build:gradle:3.6.3'
        //增加组合编译库
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
子module的build.gradle中
apply plugin: 'java-gradle-plugin'

=============调试麻烦,喜欢debug嘛,来试试=================

插件开发tip

1.groovy不可与kotlin混编,另外groovy在编译器中不支持自动补全,报错也不明显,故插件开发就舍弃groovy吧,不听劝的入坑需谨慎。
2.java和kotlin混编,当然能直接debug,不用 print log pre step

使用remote debug

image.png
image.png
./gradlew xxx -Dorg.gradle.debug=true --no-daemon
xxx可根据不同编译需求使用build 、assembleDebug、clean、installDebug 等
image.png

image.png

打断点开始debug吧!!!

你可能感兴趣的:(gradle plugin 01)