将Gradle更新为com.android.tools.build:gradle:3.1.0
后,在日志中我现在看到:
文件夹 E:\ WORK \应用\ car_android \ carapp \建立\产生\源\ kaptKotlin \ devRelease
第三方Gradle插件可能是原因
答案 0 :(得分:23)
如果您收到警告:
第三方Gradle插件可能是原因
在构建标签中,它似乎是Android Studio v3.1.x的已知问题。
根据{{3}}报告,它可能与即时应用程序配置有关,但即使从运行/调试配置中删除它也似乎无法解决问题(至少不是我安装的AS v3.1.1)。 / p>
请投票this问题,以便Android Studio小组给予更多关注,并希望及时修复。
答案 1 :(得分:2)
这是因为Kapt注释处理器使用此目录存储Kotlin生成的文件。
该目录是新生成的源集,与将源文件拆分为src/main/java
和src/main/kotlin
但是,Android Gradle插件无法将此目录识别为生成的源集。
在大多数情况下,这是完全无害的,因为大多数第三方处理器正在生成.Java
个文件。 Kapt将它们写入build/generated/source/kapt
目录。
答案 2 :(得分:1)
它在我的项目中有效! - >
注意:如果您不使用Realm和某些Google服务
,可能会有所不同面向Android的平台模块 实验性多平台项目功能的更新引入了对Android平台模块的支持。这些模块应该在Gradle构建脚本中应用相应的插件,并且可以使用来自公共模块的共享代码:
Kapt诊断位置 截至目前,Kotlin注释处理工具kapt可以提供原始Kotlin代码中位置的链接,而不是生成Java存根,因为它报告了注释处理过程中遇到的错误。您可以通过将以下行添加到Gradle构建脚本(build.gradle)来启用此功能:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-platform-android'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
// ...
<强> 2。现在添加它:
kapt {
mapDiagnosticLocations = true
}
dataBinding {
enabled = true
}
IntelliJ IDEA插件改进 Kotlin 1.2.30在IntelliJ IDEA Kotlin插件中带来了各种改进,包括性能改进,错误修复以及新的检查和意图。
对于某些项目,这很重要: 您将在build.gradle中复制此内容 -
allprojects {
repositories {
jcenter()
google()
}
它将如下图所示
现在我们需要在依赖项{ ... // } build.gradle中添加实现:
// Architecture Component - Room
implementation "android.arch.persistence.room:runtime:1.1.0-beta1"
kapt "android.arch.persistence.room:compiler:1.1.0-beta1"
// Lifecyles, LiveData and ViewModel
kapt 'com.android.databinding:compiler:3.1.0'
// ViewModel and LiveData
implementation "android.arch.lifecycle:extensions:1.1.1"
// alternatively, just ViewModel
implementation "android.arch.lifecycle:viewmodel:1.1.1"
// alternatively, just LiveData
implementation "android.arch.lifecycle:livedata:1.1.1"
kapt "android.arch.lifecycle:compiler:1.1.1"
// Room (use 1.1.0-beta1 for latest beta)
implementation "android.arch.persistence.room:runtime:1.0.0"
kapt "android.arch.persistence.room:compiler:1.0.0"
// Paging
implementation "android.arch.paging:runtime:1.0.0-alpha7"
// Test helpers for LiveData
testImplementation "android.arch.core:core-testing:1.1.1"
// Test helpers for Room
testImplementation "android.arch.persistence.room:testing:1.0.0"
* *
更多信息: Android Site :)让我知道它是否有效! (如果它不起作用,我会的 试着帮助你找到更好的方法)
答案 3 :(得分:1)
根据这个Android Studio issue,&#34; Kapt的根本问题是来自JetBrains的IDEA中的Kapt解析器将这些文件夹注册为“处于无效路径中”。这是对API的误用。&#34;
截至2014年6月11日,已经有一个修复程序可以仔细检查这些消息并对有效路径进行抑制。
答案 4 :(得分:0)
我删除两个文件夹app \ build \ Generated \ source \ kaptKotlin \ debug和app \ build \ Generated \ source \ kaptKotlin \ release(“ debug”和“ release”)并添加 在gradle中:
kapt {
mapDiagnosticLocations = true
}
然后项目就同步了,没问题。