我现在已经搜索了我自己的注释处理器在我的一个项目中没有工作的原因。安装程序如下所示:
我尝试了常见的解决方案:
没有任何帮助。我在另一个项目中进行了注释处理,并将其与此项目进行了比较。唯一的区别是我在另一个项目中使用kotlin。所以我刚刚在我的新项目中添加了以下内容:
Kotlin和apply plugin: 'kotlin-android'
以及突然的注释处理工作。为什么?我还没有找到任何关于这个的东西,但在我的情况下,注释处理不再起作用(在旧的Android版本中它肯定,但不确定它何时破坏)而不应用kotlin
插件...
据我所知,我不必应用注释处理器插件,对吗?我错过了别的什么吗?
示例build.gradle
:
apply plugin: 'com.android.library'
apply plugin: 'me.tatarka.retrolambda'
apply plugin: 'kotlin-android'
android {
if (project.hasProperty('setup.compileSdk'))
{
compileSdkVersion setup.compileSdk
buildToolsVersion setup.buildTools
defaultConfig {
minSdkVersion setup.minSdk
targetSdkVersion setup.targetSdk
}
}
else
{
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
minSdkVersion 21
targetSdkVersion 26
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dataBinding.enabled = true
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
retrolambda {
jvmArgs '-noverify'
}
}
dependencies {
// dependencies...
compile project(':bundleargs-annotation')
annotationProcessor project(':bundleargs-processor')
}
答案 0 :(得分:2)
如果没有帮助 - 重新创建项目。
答案 1 :(得分:0)
使用注解在项目的 build.gradle 文件中添加以下内容
plugins {
id 'kotlin-kapt'
}
添加注解处理器依赖如下
dependencies {
implementation project('::bundleargs-annotation')
kapt project(':bundleargs-processor')
}
清理 > 构建
这些步骤应该会触发以下文件夹下的生成文件
build > generated > source > kapt > build variant