自分の注釈プロセッサが自分のプロジェクトの1つで機能していない理由を検索しました。注釈プロセッサが機能していない - ファイルが作成されていない
- のAndroid Studioの2.3.3を
- Gradleのビルドツール2.3.3
- 注釈プロセッサは、Androidのスタジオで有効になっている
は、私は、共通の解決策を試みた:
をセットアップは、次のようになります。- Androidスタジオからプロジェクトを削除する
- キャッシュを無効にして
- アンドロイドスタジオを再起動
何も助けない(注釈処理をする前に有効になっていることを確認しました)アンドロイドスタジオに再び私のプロジェクトをインポートします。私は、別のプロジェクトで作業中の注釈処理を行い、これと比較しました。違いは私が他のプロジェクトでkotlinを使っていることだけです。そこで私はちょうど私の新しいプロジェクトに次のように追加しました:
Kotlinとapply plugin: 'kotlin-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')
}