Android编译报错:org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl

Stella981
• 阅读 786

新建了一个基于ReactNative version0.60.5的新项目,在使用Android Studio编译项目的时候build了如下错误:

org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getModuleIdentifier()

从报错类型看是gradle的版本问题,google后发现是应该是android的IDE版本(3.1.2)太低,和项目的gradle版本无法兼容导致。 项目中的版本为,通过查看/gradle/wrapper/gradle-wrapper.properties 文件中的内容,看到下面是5.4.1

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

考虑项目兼容问题,目前考虑降低gradle的版本,改成下面这样:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

你以为这样就完事了?too young too simple. 重新build就报了如下错误:

Could not get unknown property 'mergeResourcesProvider' for object of type com.android.build.gradle.internal.api.ApplicationVariantImpl.

怎么办?接着搞呗。 进入Android根目录的build.gradle文件,修改如下:

dependencies {
        classpath("com.android.tools.build:gradle:3.4.1")
        // 修改上面的gradle版本成下面的:
        classpath("com.android.tools.build:gradle:3.3.0")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

重新build项目就ok了。

欢迎关注我的公众号:君伟说。

Android编译报错:org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl

个人网站:https://wayne214.github.io

点赞
收藏
评论区
推荐文章
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
2年前
.net程序反编译工具(ILSpy)
ILSpy是SharpDevelop小组的反编译工具,ILSPY这个开源工具的目的就是代替reflector的,它可以反编译出比reflector更好的C代码。PC官方版!(https://oscimg.oschina.net/oscnet/b35fba9fc6ada998d12775b18290c2348dc.png)C反编译工具ilsp
Stella981 Stella981
2年前
Android.mk中的常用语法
__Android.mk编译文件是用来向AndroidNDK描述你的C,C源代码文件的,今天查了一些常用的的语法。一概述:一个Android.mk文件用来向编译系统描述你的源代码。具体来说:该文件是GNUMakefile的一小部分,会被编译系统解析一次或更多次的build系统。你可以在每一个Android.mk文件
Stella981 Stella981
2年前
IOS开发错误library not found for
最近在使用ReactNative技术搭建新项目的过程中,在集成神策分析时,在进行IOS端配置的时候Xcode进行build项目的时候遇到如下报错:librarynotfoundforlRNSensorsAnalyticsModule,忘记截图了,用如下这张代替一下!20161110092144979.png(https://uploadim
Stella981 Stella981
2年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
2年前
Flutter编译APK时提示The Gradle failure may have been because of AndroidX incompatibilities in ...
在编译APK的时候,很可能有如下提示:TheGradlefailuremayhavebeenbecauseofAndroidXincompatibilitiesinthisFlutterapp.1、Androidstudio编辑器,主菜单RefactorMig
Stella981 Stella981
2年前
FFMEPG 平台移植,接口简化和外部模块接入 (一)ffmpeg android移植(ndk 编译)
CareyeFFMPEG项目是Careye开源平台的一个新项目,目的是在FFMPEG项目和其外部模块,如freetype,X264的基础上建立一个多平台编译,接口调用简单的工具集。本博客是一个连载,首先从android开始写吧。因为FFMPEG本身对android编译的支持就不是特别好。本文开发环境是ubuntu分步来做:1\.建立
Stella981 Stella981
2年前
Faied to run MSBuild commond CmakeError
问题1:FaiedtorunMSBuildcommondCmakeError想要用cmake编译一个slam的工程,因为是新电脑,编译的时候遇到了这个问题首先工程的cmake文件是没有问题的,因为我在以前的电脑上可以正常的编译可使用,而在这里却出现了问题,查看了资料后解决方法如下:我的cmake版本是cmake3.13,据说很多
Stella981 Stella981
2年前
Flutter环境安装,遇到的坑
按照Flutter步骤安装,新建了一个DEMO,Debug无法通过,抛出类似如下的错误信息,\Where:Buildfile'.../android/app/build.gradle'line:25原因是jcentergoogle库无法访问,被强了,即使有VPN等等,也无法访问解决方法1:修改build.gradle,注释掉j