当前位置: 首页 > 知识库问答 >
问题:

KAPT不启用增量注释处理

吴城
2023-03-14

出于某种原因,Kapt抱怨说我的一个模块没有启用增量编译。然而,我看不出有什么不应该的理由。

运行core时的警告消息:kaptKotlin

[WARN] Incremental annotation processing requested, but support is disabled because the following processors are not incremental: io.github.mdsimmo.cmdmsg.TextPreprocessor (NON_INCREMENTAL).

错误显示<code>io.github.mdsimmo.cmdmsg。TextPreprocessor模块有故障,但我不明白为什么它不是增量的?

我已经在每个模块的< code>gradle.properties中添加了< code > kapt . incremental . apt = true (尽管我不应该这样做,因为新的kapt版本在默认情况下会这样做)。

这是CmdMsgProcessor/build。gradle(包含文本预处理器的模块):

plugins {
    id 'java'
    id "org.jetbrains.kotlin.jvm" version "1.3.72"
    id "org.jetbrains.kotlin.kapt" version "1.3.72"
    id 'idea'
}

repositories {
    mavenCentral()
    jcenter()
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.+"

    implementation project(":cmdMsg")
    implementation('com.google.auto.service:auto-service:1.0-rc6')
    kapt('com.google.auto.service:auto-service:1.0-rc6')
}

和 cmdMsg/build.gradle(CmdMsgProcessor/build.gradle 中列出的依赖项)

plugins {
    id 'java'
    id "org.jetbrains.kotlin.jvm" version "1.3.72"
    id 'idea'
}

repositories {
    mavenCentral()
    jcenter()
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.+"
}

我错过了什么?

共有1个答案

闾丘选
2023-03-14

根据kapt的官方指南,

目前,只有当所有正在使用的注释处理器都是增量时,注释处理才能是增量的。

kapt警告您< code > io . github . MDS immo . cmd msg . text preprocessor 不支持增量注释处理,因此增量处理对于整个构建是禁用的。

 类似资料:
  • 在静态编程语言1.3.30中,添加了对增量注释处理的支持:https://blog.jetbrains.com/kotlin/2019/04/kotlin-1-3-30-released/根据文档: 请注意,在当前实现中,使用任何非增量注释处理器或依赖项的 ABI 更改(到目前为止,包括修改内部声明)将导致给定模块的非增量注释处理。 我有一个带有多个注释处理器的多模块项目。只有一部分是增量的。至少

  • 我想从kotlin实体类生成jpa querydsl文件。 在线上有一个很好的例子,说明如何使用gradle生成dsl文件https://github.com/JetBrains/kotlin-examples/blob/master/gradle/kotlin-querydsl/build.gradle. 然而,我试图在maven中实现它,但没有运气。我目前的pom在下面。有人知道问题可能是什么

  • 在添加com.google.dagger:dagger-android-support依赖项后,我得到了这个gradle错误。 这是我的构建的一部分

  • 我看到一个例子解释了Kotlin JVM的KATP,它正在工作。 我想知道它是否支持Kotlin JS?有什么例子吗?

  • 在我的应用模块的build.gradle中,我添加了 但我仍然收到编译器警告 一切正常,我只是讨厌到处挂着警告。 非常感谢任何帮助!

  • 我正在尝试开发一个Kotlin AnnotationProcessor库,我想不出为什么会出现这个错误: 错误:任务“:app:javaprecompiledebug”执行失败。 >现在必须显式声明批注处理器。发现编译类路径上的以下依赖项包含注释处理器。请将它们添加到annotationProcessor配置中。  · · · -compiler.jar(项目:编译器)  · 或者,设置andro