Я включаю библиотеку масляных ножей в свой проект
implementation 'com.jakewharton:butterknife:9.0.0-rc1'
*************ОБНОВИТЬ******** Добавлен annotationProcessor 'com.jakewharton: butterknife-compiler: 9.0.0-rc1' по-прежнему не работает.
При сборке отображается следующее сообщение об ошибке.
21:26:51.121 [ERROR] [system.err] E:\workspace\company\git\shopglobal\android\Smart\app\src\main\java\com\package\smart\scenenew\actiivity\SmartActivity.java:150: 错误: 找不到符号
21:26:51.121 [ERROR] [system.err] ButterKnife.bind(this);
21:26:51.121 [ERROR] [system.err] ^
21:26:51.121 [ERROR] [system.err] 符号: 方法 bind(SmartActivity)
Но, как ни странно, я могу просмотреть исходный код в студии Android, а банка ButterKnife находится в нужном месте:
.gradle\caches\transforms-1\files-1.1\butterknife-9.0.0-rc1.aar
Показывает нормально.
Не используйте ButterKnife. Используйте DataBinding.
Из своего сообщения вы добавили только библиотеку, а не обработчик аннотаций. Добавь это
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1' в ваш файл gradle - желательно под зависимостью Butterknife. Создайте свой проект.
Ваша библиотека Butterknife должна выглядеть так:
dependencies {
....
implementation 'com.jakewharton:butterknife:9.0.0-rc1'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
}
Удачи!
Добавил annotationProcessor по инструкции. Но все еще не может найти ButterKnife.bind ..... Он может разрешить @BindView, но не может найти метод ButterKnife.bind. Я делаю кеш недействительным и очищаю проект. Все еще не работает ... Очень странно
Я выяснил, почему это произошло. Существует третий модуль, который добавляет библиотеку масляного ножа. Он помещает банку с масляным ножом старой версии в свой каталог libs, а не импортирует из gradle .... извините за это. Спасибо!
Вы можете упомянуть файл Gradle?