私のプロジェクトではDataBindingは非常にうまく機能しましたが、アップグレード後Android Studio 2.3 today。Run 'app'は次の理由で失敗しましたエラー:
_Error:(15, 40) Error: package com.javan.myrecorder.databinding not exist.
import com.javan.myrecorder.databinding.FragmentEventsBinding;
:app:compileMockDebugJavaWithJavac FAILED
_
私はただAndroid studioをアップグレードし、何も変更しませんでした。すべてのプラグインは最新です!今私の質問は、なぜこのエラーが発生し、どうすれば解決できますか?ヘルプは大歓迎です!
英語は私の母国語ではありません。私の側のエラーを許してください。
EDIT1
Like Android project googlesamples/Android-architecture
git checkout todo-databinding
_./gradlew assembleDebug
_を実行してビルドします。ビルドは次のエラーのために失敗しました:EDIT2Gradle 2.3へのアップグレード後にデータバインディングが壊れましたに従ってこの問題を修正しました。
build.gradle(app)
add
_apply plugin: 'com.Android.application'
apply plugin: 'com.neenbedankt.Android-apt'
..balabala
dependencies {
apt 'com.Android.databinding:compiler:2.3.0'
}
_
私のプロジェクトのいくつかのファイル:
_gradle-wrapper.properties
_
_#Mon Mar 06 10:59:04 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.Zip
_
@petrnohejl @George Mount @ Sa-Zad Prasla、ありがとう!
Android-apt
したがって、apt
の使用は、Android Studio 2.2。
Android-apt移行ガイド に従って、代わりに次をbuild.gradle
:
dependencies {
classpath 'com.Android.tools.build:gradle:2.3.0' // use same gradle version!
annotationProcessor 'com.Android.databinding:compiler:2.3.0'
}
Kolinを使用している場合は、代わりに次を使用します。
apply plugin: 'kotlin-kapt'
dependencies {
classpath 'com.Android.tools.build:gradle:2.3.0' // use same gradle version!
kapt 'com.Android.databinding:compiler:2.3.0'
}
問題は、すべてのエラーの中で見づらい警告です。
警告:注釈処理に互換性のないプラグインを使用:Android-apt。これにより、予期しない動作が発生する可能性があります。
Aptを削除すると、データバインディングが機能します。
私も同じ問題に直面しています。私はButterKnifeとDaggerを使用していました!
次のように解決しました
1)アプリレベルのgradleファイルから削除:
プラグインの適用:「Android-apt」またはプラグインの適用:「com.neenbedankt.Android-apt」
2)プロジェクトレベルのgradleファイルから削除:
クラスパス「com.neenbedankt.gradle.plugins:Android-apt:1.8」
3)そして、次の依存関係として「apt to annotationProcessorchange」を変更します。
apt 'com.jakewharton:butterknife-compiler:8.5.1'、apt "com.google.dagger:dagger-compiler:2.5"
に:
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'、annotationProcessor "com.google.dagger:dagger-compiler:2.5"
Android Studio v2.3。GoLang Bindプラグインは、ライブラリ.aar
ファイルを生成できなくなりました。
この問題は、GoMobileバージョン「+ eb90329 2017年3月7日」アップデートとGoBindプラグインをバージョン「0.2.6」に戻すことで解決しました(現在のバージョンは「0.2.8」です)
GoMobileを更新します。
$ go get -u -x golang.org/x/mobile/cmd/gomobile
$ gomobile init -x
Build.gradleのGoBindプラグインを元に戻します。
plugins {
id "org.golang.mobile.bind" version "0.2.6"
}
このソリューションは、goバージョン1.7.1および1.8、およびAndroid Studioバージョン2.1.2、2.2.3、および2.3。
私はあまりにも最近Android studio 2.3.3の最新バージョンをダウンロードしました。バージョン2.2.3で同じエラーが発生していたためです。つまり、Error:Failed to resolve:com.Android。 databinding:compiler:2.2.、最新バージョンでも同じエラーが発生していました。プロジェクト構造を確認しました。ファイル>プロジェクト構造>プロジェクト、Androidプラグインのバージョンはまだ2.2.3でしたが、2.3.3に変更しました。ビルドは成功し、すべてがスムーズに機能しています。
Gradel-wrapper.properties distributionUrlを「https://services.gradle.org/distributions/gradle-2.14.1-all.Zip」に戻す2つのことgradleバージョンクラスパスを以前のバージョン「 'com.Android.tools .build:gradle:2.2.3 '"
追伸インスタントランは、古いgradleバージョンのADTで動作を停止します。