Compilation failed; see the compiler error output for details.之解决方法

Compilation failed; see the compiler error output for details.
编译失败了;有关详细信息,请参见编译器错误输出。

关于这个问题 我真的无力吐槽 这个问题导致我卡了几个小时不停的更改配置 不停的跑app 重新运行 下载补丁 插件 !!

在这里记录一下 这个错误的解决方法 :

一来 加深自己的印象 不要下次遇到再懵逼 白白浪费几个小时 解决问题!

二来 为别人留下一个有用的解决方法,而不是瞎几把复制 浪费读者的时间!

首先谈谈根源

导致出这个问题 :
大部分是因为导入别人的项目 或者是以前自己写的demo,由于版本不同,引入的库的版本不同,或者是编译的版本不同
造成的。故:有些版本里新添加的方法 或者类 属性导致你现在使用的android studio版本太高了 导致有些低版本的库
会报警告 你看到警告可能会不经意的修改这个库的版本
造成的 编译出错!有些资源根本找不到!

为了重新这个问题 我重新把之前的某个库的版本回调了!文字描述太单调 以后用图片来表示我解决的问题
这里写图片描述

在studio的Terminal命令行中进入项目的根目录,或者可以在Android studio的Terminal中直接操作也可以,然后敲入一个命令:gradlew compileDebug –stacktrace
就可以输出较详细的信息,然后根据命令行给出的提示,还可以在后面加上-info或者-debug的选项得到更详细的信息,于是这个命令可以这样写:gradlew compileDebug –stacktrace -info
查找后,我又用上面博主提供的方法用了这个命令
gradlew compileDebugSources –stacktrace -info
以上命令参考来源于 https://blog.csdn.net/runner__1/article/details/53482565

根据这位大佬的命令 我们可以查出问题所在 请仔细分析问题所在

再来看看Build的问题

这里写图片2述

根据红框标出的位置 可以看出问题出在
错误: 找不到符号符号: 类 MultipleItemRvAdapter位置: 程序包 com.chad.library.adapter.base

根据错误提示 我考虑到可能是这个库的版本原因导致有些类或者属性找不到 也就是说 你现在所依赖的库里没有这些
然后我找到自己的Demo里的build.gradle 如图:

12

找到该库的引用路径 修改成最初的版本即可 第一次可能没有提示 我这是为了错误重现 有了版本提示
这里写图片描述

还有一点差点忘记:
找到工程的build.gradle,在 repositories 节点添加上 maven { url "https://jitpack.io" }
之后打开想依赖这个 library 的模块,比如这里我们是 app 这个 module,在 dependencies 节点添加上
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.40'
Sync 一下 Gradle,这样就可以了。如果 Sync 成功了,那我们在 app 中就成功依赖了 GitHub 上的 library
此时可以打开 app 的 Module Settings,看一下它的 Dependencies,如下图:

这里写图片描述

没有版本提示的情况下 可以GitHub看下文档 看下哪个版本支持哪些功能 这样就可以了!!

什么问题都是等自己解决了才知道 知识的重要性 不会就是不会 !自己解决的问题 才是真的学到了 经历了。。。

猜你喜欢

转载自blog.csdn.net/life_s/article/details/81008761
今日推荐