Использование привязки данных в ошибке android: package *. *. Databinding не существует
Я пытаюсь реализовать привязку данных в приложении Android. Это - это ссылка, которую я использую для ее настройки. Даже после выполнения всех необходимых инструментов, я получаю следующую ошибку в gradle -build:
error: package com.example.satpracticeapp.databinding не существует.
(Этот пакет - это то, что я импортирую в свой файл MainActivity.java)
Я попробовал этот (компилятор привязки данных), но он не работал.
Проблема в том, что я уже успешно попробовал приложение hello-world, использующее привязку данных, и оно работает. Но, когда я пытаюсь реализовать его в приложении, которое я сделал несколько недель назад, я получаю ошибку, о которой я упоминал выше. Поиск решений, я скопировал файлы gradle из моего успешного приложения hello world в мое старое приложение - это тоже не сработало.
Вот мой уровень приложения build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.example.satpracticeapp"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dataBinding {
enabled = true
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.0'
}
И здесь buildscript уровня проекта build.gradle:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
}
Вот ссылки на минимальную версию трех файлов (если это необходимо)
После долгих вытягиваний волос я не мог понять решение и получить ту же ошибку сборки снова и снова.
Итак, в качестве временного решения, я пытаюсь скопировать свои классы и макеты в рабочий проект hello world. Что мне не хватает?
EDIT:
После нескольких часов бессмысленного поиска я вернулся к своему коду. Проверял это слово за словом и обнаружил ошибку ввода при имени переменной привязки в XML файле.
Теперь все работает отлично!
Ответы
Ответ 1
У меня была одна и та же проблема, которая оказалась дубликатной символикой в одном из моих *.java-классов. Он показан в консоли Gradle, но он был скрыт среди ошибок привязки данных. у меня было около 72 ошибок привязки данных, и эта повторяющаяся ошибка символа была посередине, поэтому ее легко пропустить.