有kotlin中的Android项目编译出现 Unresolved reference: R 或者context、it 、entity
再编译别人kotlin项目时,gradle编译出错了,找到具体的任务,使用编译命令 gradlew编译看详细输出gradlew :main:compileDebugKotlin发现出现的问题是:直接报 Unresolved reference: R。在确保所有的资源文件都导入成功之后,开始google+度娘去查找问题,大致分为四个问题。1. gradle插件版本存在问题首先检查一...
再编译别人kotlin项目时,gradle编译出错了,找到具体的任务,使用编译命令 gradlew编译看详细输出
gradlew :main:compileDebugKotlin
发现出现的问题是:
直接报 Unresolved reference: R。
在确保所有的资源文件都导入成功之后,开始google+度娘去查找问题,大致分为四个问题。
1. gradle插件版本存在问题
首先检查一下自己的gradle版本,当前2019年3月8号gradle:3.3.0
插件版本是有问题的,我切换回了3.2.0
版本编译通过。如果你的gradle版本是3.3.x
的,不妨试一下这个方法。
2. kotlin版本和kotlin-gradle-plugin版本不一致
AS正对这个会有一个黄色的警告:
此时,将两个版本更换为一致版本即可。
3. AS可能存在换成问题
这个应该是IDEA未知的问题,很难描述,就是你百试不灵的情况下,请File
-> Invalidate Caches / Restart
。重启之后,Build
-> Rebuild Project
。
4. 最后一种方案
重新创建一个新的项目,使用最新的gradle和kotlin配置,先把项目运行起来,然后将配置复制到原来的项目中,重新开始。
2019.04.25
kotlin项目中出现了各种千奇百怪的现象,各种Unresolved reference找不到,大致情况如下图:
我的问题是这样的,我的项目中依赖了两个library
,但是有一个library
的build.gradle中没有添加
插件:
apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
结果就导致了这个千奇百怪的报错现象,所以如果你的kotlin项目存在依赖,那么需要在每个library
中添加以上插件,才能使得项目正常运行。
其他原因,可以参考:
1.https://blog.csdn.net/robothost/article/details/78134653
2.https://blog.csdn.net/upupupgoing/article/details/74942043
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)