web-dev-qa-db-ja.com

アップグレード後にDataBindingが機能しないAndroid Studio 2.3

私のプロジェクトでは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、ありがとう!

17
Javan

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'
}
14
Josh Bowden

問題は、すべてのエラーの中で見づらい警告です。

警告:注釈処理に互換性のないプラグインを使用:Android-apt。これにより、予期しない動作が発生する可能性があります。

Aptを削除すると、データバインディングが機能します。

2
George Mount

私も同じ問題に直面しています。私は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"

2
raghu

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。

1
David Manpearl

私はあまりにも最近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に変更しました。ビルドは成功し、すべてがスムーズに機能しています。

0
Harsh Saini

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で動作を停止します。

0
Sa-Zad Prasla