网络知识 娱乐 gradle究竟为何频频出错 as的学习笔记

gradle究竟为何频频出错 as的学习笔记

人性的泯灭,还是道德的沦丧?不过是智商的不足,认知的误区。

10-17

一、android studio安装后报错

Internal error. Please report to https://code.google.com/p/android/issues

①cmd输入netsh winsock reset(无效

②(1)断开网络启动

(2)出现unable to access android sdk add-on list(找不到sdk,故无效

(1)..Android Studiobinidea.properties(需要对应自己的安装目录下)最后面加一行代码:

disable.android.first.run=true(初次启动不检测sdk)

(2)进入软件后进行android sdk的下载

显然这个错误是由于没有sdk,不知道为什么下载的时候明明有勾选sdk的,真是麻烦而且这个版本很旧,于是我把它卸载了,去贴吧找到了新版软件。百度网盘下载太慢,我还是用了工具上官网下载了。

二、此时已经安装并打开as了,但是我打开了某个工程后它跟我说module sdk is not defined,我选择旁边的setup sdk,选择了android api29的,然后等了一盏茶的功夫它才安装好sdk就行了

三、build框框显示peer not authenticated

gradle下载失败的问题

四、提示Gradle project sync failed. Basic functionality (e.g. editing, debugging) will not work properly.

gradle下载失败的问题

五、gradle下载失败的问题

解决办法

打开一个项目,首先Sync Project with Gradle Files,然后Android studio会自动更新新的gradle,不用等它更新就可以停止了,然后打开项目的 gradle–>wrapper–>gradle-wrapper.properties这个文件

在里面寻找你的as的gradle的版本 然后去下载对应的版本

地址:

http://downloads.gradle.org/distributions/gradle-xx-all.zip

xx改为自己想下载的版本就好了。

http://services.gradle.org/distributions/ 这个网站里面自己看也行

完成之后不需要解压,将zip文件放到指定目录下:C:UsersASUS.gradlewrapperdistsgradle-3.3-all55gk2rcmfc6p2dg9u9ohc3hw9 这里根据自己个人的情况有所不同,gradle-3.3-all就是版本号,根据你自己的版本创建文件夹。

————————————————

六、项目里

build.gradle中gradle版本和gradle–>wrapper–>gradle-wrapper.properties版本要一致(此处严重错误,请到10-19四)

https://blog.csdn.net/pashanhuxp/article/details/52681671

七、key store path

随便填一个文件夹和密钥名就行

八、提示 key was created with errors

Warning:

JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore D:Program FilesSensorDemo1keykeytest.jks -destkeystore D:Program FilesSensorDemo1keykeytest.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12

我暂时不想管他

九、提示

Missing Gradle Project Information. Please check if the IDE successfully synchronized its state with the Gradle Project Model

10-19

一、Gradle sync failed: Unable to start the daemon process.

android studio是通过gradle对项目配置的,而系统中没有对android studio 的默认配置,就像Eclipse中的eclipse.ini文件。

解决方法:

在操作系统当前用户的.gradle文件夹下:C:UsersAdministrator.gradle 设置gradle.properties,若无就新增。

在文件中添加如下配置信息:

org.gradle.jvmargs=-Xmx512m

二、由于国内访问jcenter太慢可能导致各种各样的gradle错误,可以更换成阿里的jcenter镜像(也可以说是:修改Gradle Maven仓库地址为国内阿里云镜像),以下是两种方法

①将根目录的build.gradle的buildscript换成(当然Android Plugin for Gradle版本应该改成对应版本)

buildscript {

repositories {

// mavenCentral()

// jcenter()

// google()

maven { url 'https://plugins.gradle.org/m2/' }

maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }

maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }

maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

}

dependencies {

classpath 'com.android.tools.build:gradle:3.5.1'

}

}

allprojects {

repositories {

// mavenCentral()

// jcenter()

// google()

maven { url 'https://plugins.gradle.org/m2/' }

maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }

maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }

maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

}

}

②在c:Userslvyuan.gradle根目录下创建一个init.gradle文件,里面的内容为(这个内容似乎没有效果但是我不知道怎么更改)

allprojects {

repositories {

def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'

all { ArtifactRepository repo ->

if (repo instanceof MavenArtifactRepository && repo.url != null) {

def url = repo.url.toString()

if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {

project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."

remove repo

}

}

}

maven {

url REPOSITORY_URL

}

}

三、Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath': Could not resolve net.sf.kxml:kxml2:2.3.0.

是gandle的问题

四、Gradle和Android Plugin for Gradle完全不同版本不同,wrapper.properties文件中指示的是Gradle的版本,build.gradle文件中指示的是Android Plugin for Gradle版本

https://cloud.tencent.com/developer/article/1033933

五、Failed to find target with hash string 'android-26' in: C:UsersASUSAppDataLocalAndroidSdk

缺少对应版本sdk

在as中 tools->sdk manager 下载对应版本

六、Failed to find Build Tools revision 26.0.2

缺少对应版本build tools

在as中 tools-sdk manager-选择tools-勾上show package details下载对应版本

七、Failed to resolve: com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.47

在改成阿里的jcenter镜像时,注意要保留其他的maven { url 'https://dl.bintray.com/umsdk/release' }

这种格式的内容(我误删了所以报错)

八、Support for builds using Gradle older than 2.6 was deprecated and will be removed in 5.0. You are currently using Gradle version 2.4. You should upgrade your Gradle build to use Gradle 2.6 or late

2.6以前的gradle已弃用,你应该改成2.6或者更新的版本

but当我改成了2.6

Gradle sync failed: Unsupported method: BaseConfig.getApplicationIdSuffix().

The version of Gradle you connect to does not support that method.

To resolve the problem you can change/upgrade the target version of Gradle you connect to.

Alternatively, you can ignore this exception and read other information from the model.(或者您可以忽略此异常并从模型中读取其他信息)

暂时就这样吧

总结、进行安卓开发之前我们首先要确定的是开发环境,也就是ide(integrated develop environment

  • 我们可以选择eclipse和as(android studio)或者netbean,这里我推荐eclipse和as都下载下吧。有说法是as太耗内存了,因而不太愿意选择as。只是github上大部分项目都是用的as,显然as变成主流是一个趋势,同是这意味着在不使用as时你要运行大部分项目前需要先进行项目迁移,这显然比较麻烦,。至于eclipse则是因为目前网上教程还是基本是eclipse的。(不同的ide下文件结构是不同的,所以换一个ide是要进行一些处理的)
  • 下载了3.5.1版本的as之后,①了解一下gradle和android plugin for gradle的概念②在.gradle文件夹里建立gradle.properties文件以避免宕机(特别是你的内存只有2GB)③新建一个项目后,在修改项目中的build.gradle文件中的jcenter为国内阿里镜像,以预防各种gradle错误。
  • 成功gradle一个新建的项目后,或许你要gradle其他网上下载的或者旧的项目,那么你可以这样①打开项目②修改build.gradle③file-project structure-moduls查看sdk版本并安装④查看sdk tools版本并安装⑤进行gradle