经过4天的努力,我终于让我的代码正常运行了。解决问题的步骤
数据绑定错误之类的
错误:包 com.packagename.databinding 不存在错误:找不到符号类 CustomMainActivityBinding
应用程序 gradle 必须添加以下代码才能查看默认出现的 100 多个错误
allprojects {
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xmaxerrs" << "4000"
options.compilerArgs << "-Xmaxwarns" << "4000"
}
}
}
数据绑定和 Room 架构组件的 Gradle 依赖项
annotationProcessor 'com.android.databinding:compiler:3.0.1'
implementation 'android.arch.lifecycle:extensions:1.0.0'
implementation 'android.arch.persistence.room:runtime:1.0.0'
annotationProcessor 'android.arch.lifecycle:compiler:1.0.0'
annotationProcessor 'android.arch.persistence.room:compiler:1.0.0'
注意:Gradle 插件版本为 3.0.1
我更改了所有虚拟机以实现 Observable 并调用
registry.notifyChange(this, BR.bar);
在通知更改的情况下,还实现覆盖的方法
@Override
public void addOnPropertyChangedCallback(OnPropertyChangedCallback
callback) {
registry.add(callback);
}
@Override
public void removeOnPropertyChangedCallback(
OnPropertyChangedCallback callback) {
registry.remove(callback);
}
这些东西使我的代码构建,但是当我解决与 Room 查询相关的错误时,它毫无例外地运行。这是主要原因,代码正在构建但没有运行。当我再次重建我的项目时,我可以看到这些错误。
更新:
在Android studio 3.1.3之后,消息窗口消失了,现在所有构建错误都出现在构建视图下。尽管有可用的切换来获取文本视图的错误响应,但对于数据绑定错误,这还不够。
帮助我的解决方案:
- 在命令提示符/终端中导航到项目根目录。
- 如果 Mac 运行此命令“./gradlew build --stacktrace”,如果 Windows 运行“.\gradlew build --stacktrace”。
- 现在搜索“error:”标签,编译时错误就会出现。
我无法在 IDE 中得到这些错误。