错误描述
新版本的Android Studio(本博客使用Android Studio 3.5)导入旧的Android Studio项目时出现build错误,在解决过程中出现以下提示:
- ERROR: Cause: peer not authenticated
- ERROR: Could not find com.android.tools.build:gradle:3.5.0
这类导入旧项目出现build的错误,往往是由于Gradle的错误引起。
问题解决
不同的Android Studio依赖的Gradle工具的版本不同,具体可以参看 :Android Gradle plugin release notes 。其实完全可以不用这么麻烦,新建一个Android Studio项目,通过"File > Project Structure > Project"即可查询到当前Android Studio所使用的Gradle工具(Plugin)的版本以及Gradle的版本。如下图所示:
可以看到当前的Gradle Plugin的版本为3.5.0,Gradle版本为5.4.1。
接着修改旧的Android项目的build.gradle(Project),修改“dependencies”的“classpath”部分,如下图所示:
修改其中的gradle工具的版本,使用当前支持的最新版本。此处的修改能够解决“ERROR: Cause: peer not authenticated”的错误,但同时出现“ERROR: Could not find com.android.tools.build:gradle:3.5.0”的错误。
出现这个错误的原因是因为Google新增了Maven repositories,如上图所示的repositories——“google()”,在build.gradle中添加这个新的Maven repositories即可,详细可参见:StackOverflow
后记
旧项目的导入出现build错误大概率是由于Gradle的错误,但是也不能完全一概而论,要视具体情况具体分析。