问题标签 [kapt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 具有新 dataBinding 导入的 Android Studio 3.2.1 无法编译
我该如何解决这个问题?我在我的 macOS 上安装了一个新的 Android Studio,我想导入 dataBinding e 来学习有关这项技术的教程。但是当我导入依赖项并构建时,会显示以下错误。
(Android Studio 3.2.1 Build #AI-181.5540.7.32.5056338,构建于 2018 年 10 月 8 日 JRE:1.8.0_152-release-1136-b06 x86_64 JVM:OpenJDK 64-Bit Server VM by JetBrains sro macOS 10.14.1)
我使用以下 app.gradle 创建了一个新项目和 Empty Activity,但错误仍然存在。有必要卸载Android Studio吗?
android - Android - 使用 gradle 3.2.1 构建数据绑定和 kapt 失败
我遇到了数据绑定和 kapt 的问题我正在使用带有 Android Studio 3.2.1 的 kotlin 问题是当我使用 kapt(我想如果我想使用 DBFlow 就必须使用它)时,构建失败。
我已经尝试了几种我发现的解决方案,例如使缓存无效并重新启动或清理项目并重建它,添加或删除 kapt 'com.android.databinding:compiler:3.1.4' 但将其添加到最新版本中显然是无用的卡普特
这是项目的gradle文件
以及应用程序的 gradle 文件
当应用程序正在构建时,它无法在 DataBinderMapperImpl 类中找到 BindingImpl 类
[编辑]
我有这个错误没有添加该行:
添加 kapt "com.android.databinding:compiler:$android_plugin_version" 后:
您知道导致此问题的原因是什么吗?
gradle - 更改 KAPT 类生成路径
我想指示我的 Kotlin 注释处理器更改生成的类的输出目录。
我想从我的 Gradle 构建脚本中更改kapt.kotlin.generated
参数。我尝试了以下方法无济于事。
不起作用,路径不会改变
kapt { arguments { arg("kapt.kotlin.generated", new File('path')) } }
不起作用,路径不会改变
kapt { javacOptions { option("kapt.kotlin.generated", new File('path')) } }
不起作用,构建时出现 NullPointerException
kapt { javacOptions { option("-Akapt.kotlin.generated", new File('path')) } }
使用字符串路径而不是文件时,所有三个结果都相同。
我很茫然,任何帮助将不胜感激。
android - e: [kapt] 'com.sun.tools.javac.util.Context' 类找不到('tools.jar' 在插件类路径中不存在)。卡普不会工作
我的项目之前一直运行良好,直到我升级到API 28
并重构为Androidx
. 首先我认为我必须解决问题代码,因为重构后未解决的参考代码太多。在我解决了很多问题后,我仍然收到错误
所以从gradle控制台我得到这样的错误
从那个错误中,我得到这样的错误
所以,我认为这是我的代码无法编译成功的问题
这是我的build.gradle
build.gradle
(应用程序)
android - 更新 Kotlin 版本后出现 Kapt 错误:java.lang.NoSuchFieldError: CONTENT_ROOTS
将 Kotlin 版本从 1.2.51 更新到 1.3.11 后,出现编译错误 (kaptGenerateStubsDebugKotlin FAILED)。
我也尝试过最新版本(比 1.2.51 更新),但我遇到了同样的问题。
java - Kotlin 不识别 Java 保留关键字
我在 Kotlin 中使用 Java 的保留关键字时遇到问题。由于并非所有保留关键字在 Kotlin 中都可用,因此 Kotlin 编译器无法(不是吗?)检测仅在 Java 中存在的保留关键字。
例如,以 为例default
。它是 Java 保留关键字。这意味着您不能执行以下操作。
但是,它不是 Kotlin 中的保留关键字,因此您可以按如下方式使用它
对于不懂 Java 的人来说,很难知道它们是保留关键字。由于 Kotlin 编译器不会给您错误或任何类型的警告您正在使用保留关键字,因此它可能会在以后导致一些您不会预料到的问题。
它可能遇到的问题之一是在AnnotationProcessingkapt
期间,这是您使用或包含在 gradle 中的库annotationProcessor
。例如,当您尝试获取UserKotlin
类的字段时,Kotlin 使用 Java 编译器,您会得到一个空列表,因为 Java 编译器不“理解”该字段default
并忽略它(跳过它?)。
现实生活中的示例是,如果您使用Room库并拥有如下实体
房间注释处理器将生成一个 SQLite 创建查询
所以,它基本上跳过了这个default
领域。
当我尝试使用 Java 保留关键字时,Kotlin 是否会发出警告?还是 Kotlin 中的一个尚未修复的错误?或者是否有任何文档提到了这个问题。
如果我了解 Java,那么我可能不愿意使用这些关键字,因为我知道这些关键字在 Java 中是保留的。但是,如果我不了解 Java 并且无法弄清楚问题所在怎么办?
android - e: [kapt] 发生异常:java.lang.IllegalArgumentException: intcannot be convert to an Element
我正在尝试在我的 android 应用程序中实现 Room。我正在尝试从 API 获取数据并将它们保存在本地数据库中。但是当我运行应用程序时发生了这个错误
e: [kapt] 发生异常:java.lang.IllegalArgumentException: intcannot be convert to an Element
这是我的数据库类:
这是我的存储库:
这是我的 userDao
我的登录视图模型:
也发生此错误:
org.gradle.api.tasks.TaskExecutionException:在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor 的任务 ':app:kaptDebugKotlin' <30 内部调用> 执行失败$Worker.run(ThreadPoolExecutor.java:617)<1 internal call> at java.lang.Thread.run(Thread.java:745) 原因:org.gradle.api.GradleException:编译错误。有关更多详细信息,请参阅 org.jetbrains.kotlin.gradle.internal.KaptWithKotlincTask.compile(KaptWithKotlincTask.kt:79)<17 internal 的 org.jetbrains.kotlin.gradle.tasks.TasksUtilsKt.throwGradleExceptionIfError(tasksUtils.kt:16) 的日志来电> ...33 更多
kotlin - 如何在 kotlin-maven-plugin 中指定 annotationProcessPath 的生成路径?
我在 kotlin-maven-plugin 中使用 hibernate-jpamodelgen 作为静态 jpa 生成器。但是它找不到原始类。
经过检查,我发现在那种情况下,在 generate-source/kapt.xml 中生成了实体。在 kaptStubs 目录中生成的所有其他类。没有 kapt 它工作正常。
输出选项不起作用。如何将输出目录更改为一致性?
谢谢你,伊琳娜
kotlin - 如何使 kapt 与 jpa 一起使用
Maven 在编译器尝试生成 jpa 实体时失败。
这两个类都存在。Gender 类存在于 kaptStubs 目录中,Gender_ 存在于 kapt 目录中。
起居室: