dependencies中的ksp指定的是KSP processor,对于有些库可能注解和定义和KSP的processor可能会在同一个包里,那么写一句就够了,如Room的,就一句:ksp ‘androidx.room:room-compiler:2.6.1’。 如果是自定义的processor,需要为processor单独建一个library module,配置ksp库为依赖即可: // KSP processor module build.gr...
TheRouter 从1.1.4-rc2版本起,引入了 Kotlin Symbol Processing(KSP)作为注解处理的主力工具。KSP是一种基于Kotlin的编译期插件API,采用基于语法分析的方式,提高了编译速度,使得开发者能够更加高效地进行Android项目开发。以下是TheRouter的KSP使用方法: 1. 引入KSP插件 在项目的build.gradle文件中加入以下依赖,删除之前...
官方教程到这一步就结束了,里面没有介绍最关键的ksp处理类的jar包生成。只知道要传一个AP=/path/to/your-processor.jar进去。 3. ksp处理类 package cc.rome753 import com.google.devtools.ksp.* import com.google.devtools.ksp.processing.Dependencies import com.google.devtools.ksp.processing.Resolver import...
官方教程到这一步就结束了,里面没有介绍最关键的ksp处理类的jar包生成。只知道要传一个AP=/path/to/your-processor.jar进去。 3. ksp处理类 packagecc.rome753importcom.google.devtools.ksp.*importcom.google.devtools.ksp.processing.Dependenciesimportcom.google.devtools.ksp.processing.Resolverimportcom.google....
在KSP 1.0.14 或更新的版本中,可以在gradle.properties中使用一个标记来启用新的 KSP 预览版本: ksp.useKSP2=true KSP 是一个支持创建插件来扩展 Kotlin 编译器的API。它以独立于编译器的方式理解 Kotlin 的语言特性,如扩展函数、声明处型变(declaration-site variance)和局部函数。
Kotlin Symbol Processor(后简称 KSP)是 Google 开发的元编程工具,基于前文所说的 KCP。它通常被用于注解处理及代码生成,它的功能虽然不如 KCP 强大,但拥有较为完整的教程与文档且更加易用。在 KSP 诞生之前,开发者通常使用 KAPT 来进行注解处理和代码生成,但其二者处理 Kotlin 的阶段不同,如下图所示: ...
再比如RxJava1.x里,类似这样的操作很常见:Subscriptionsubscription=Observable.create(...)// 以下链式...
这里的DBSample是APT/KSP为配置了@WCDBTableCoding注解的ORM类生成的对应的DB工具类,写好ORM类之后,编译一下就可以生成。 操作数据 基本的增删查改同样是One line of code 插入操作 //Java//Prepare dataSamplesample=newSample();sample.id=1;sample.content="sample_insert";//Insertdatabase.insertObject(sample...
年初的时候在原来的路由的玩具工程中实验了下ksp功能。然后机缘巧合下在年末的时候也写了个新的ksp,用来完成启动任务的分组工作。 这个东西整体来说和apt一样,我觉得大家都可以尝试下,但是高低版本间的差异也比较大,但是也都还在可以接受的范围内吧。
Kotlin Symbol Processor(后简称 KSP)是 Google 开发的元编程工具,基于前文所说的 KCP。它通常被用于注解处理及代码生成,它的功能虽然不如 KCP 强大,但拥有较为完整的教程与文档且更加易用。在 KSP 诞生之前,开发者通常使用 KAPT 来进行注解处理和代码生成,但其二者处理 Kotlin 的阶段不同,如下图所示: ...