2014-11-02 81 views
21

我得到这个错误Android的工作室 - 无法找到有效的认证路径要求的目标

Gradle 'project_name' project refresh failed: Unable to find valid certification path to requested target

当我创建于Android工作室0.8.14的Mac OSX

建立一个新的项目。 gradle这个文件似乎成为空

// Top-level build file where you can add configuration options common to all sub-projects/modules. 

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.13.2' 

     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } } 

allprojects { 
    repositories { 
     jcenter() 
    } } 

我不能运行该项目,看来我必须手动配置一切。

这里是idea.log http://pastebin.com/kyhfrBp9

+0

我要说的是你的build.gradle文件不那么空虚。这是父级build.gradle,它没有定义任何公共属性。您的模块文件(build.gradle)将为您的项目中的编译单元提供单独的条目。你可以告诉我build.gradle的内容(模块:...) – Soundararajan 2015-01-04 18:52:48

+1

你什么时候遇到这个错误?建立?打开一个项目? 。它阻止你继续?你可以发送该项目文件 – Soundararajan 2015-01-04 18:56:38

+0

您好我已经解决了这个问题确保应用程序级构建gradle依赖关系示例'classpath'com.android.tools.build:gradle:2.3.3''应与** CordovaLib Dir **构建gradle依赖关系'classpath'com.android.tools.build:gradle:2.3.3''此外,检查是否存储库{} {} } ** ** **库* maven {url“http:// jcenter.bintray.com“} }' – 2017-07-31 10:38:38

回答

3

好像对我的错误。 我有同样的问题,并通过手动启动我的项目目录中的gradlew.bat解决它。

3

尝试更新Android工作室,现在是版本1.0.2

+0

已经这样做了,问题依然存在。 – FWeigl 2015-01-04 18:31:23

0

如果您仍然有问题,请尝试删除在“名为C“.AndroidStudio1.2”的目录:\ Users \用户名\ .AndroidStudio1.2'

当然根据你

这对我来说

8

虽然牛逼的工作哪个版本的名称不同他的问题太老了,但许多人必须面对同样的问题,所以我会说明我是如何解决这个问题的。

问题是类路径'com.android.tools.build:gradle:0.13.2' 通过build.gradle中的上面一行,您要求它找到一个特定版本的gradle,但是这个版本并不存在于您的机器中。最好是上述行更改为

classpath 'com.android.tools.build:gradle:+ 
32

它发生在我身上的,竟然是因为查尔斯代理

解决方案:

  1. 关闭查尔斯代理;
  2. 重新启动Android Studio。
+0

哇。谢谢。我不会猜到。 – Pranab 2016-12-20 13:44:19

+0

我们如何关闭CharlesProxy? – AndroGeek 2017-03-16 13:42:19

+0

@AndroGeek这是一个正常的代理应用程序,只需关闭就可以了。如果你不知道它,这可能不是你的问题的原因。或者您可以检查是否使用了可能干扰IDE的网络活动的任何其他代理。 – 2017-03-16 13:51:19

1

在gradle-wrapper.properties文件的build.gradle文件和最新distributionUrl中正确添加最新的gradle版本。 [请参考https://developer.android.com/studio/releases/gradle-plugin.html获取Android studio的最新gradle版本]

确保网络连接正确[网络连接不应阻止在android studio中升级gradle]。 gradle升级后,android studio会提示接受/拒绝证书,我们应该接受证书。

20

对我来说,问题是机器人工作室无法与 “https://jcenter.bintray.com/

建立连接此更改为“HTTP”固定的问题,我(虽然这是不推荐)。

在你的build.gradle文件,更改

repositories { 
    jcenter() 
} 

repositories { 
    maven { url "http://jcenter.bintray.com"} 
} 
+0

这解决了我的问题。但现在我正在使用像artifactory来管理我的回购 – James 2017-05-08 20:54:41

2

对我来说,这是我的互联网,我的工作受限网络

+0

您是否找到解决方案? – 2017-05-04 10:07:29

+0

是的,我切换到一个开放的网络。 – Ali 2017-05-04 15:23:05

1

转至摇篮控制台右下角并打开它。在这里你会看到一些https/https调用点击链接并在网络浏览器中打开它们,然后尝试使用它为我工作的干净构建。

我想这是因为工作室无法获得命中的回应。

0

我明白了,因为我在代理之后。我在gradle.properties中设置了http而不是https代理。在这种情况下需要Https:

systemProp.http.proxyHost=<host> 
systemProp.http.proxyPort=<port> 
systemProp.https.proxyHost=<host> 
systemProp.https.proxyPort=<port> 

此外,请查看Android Studio日志,了解可能出现错误的位置。

1

jcenter()等于https://bintray.com/bintray/jcenter

您需要进口jcenter的cerficate到Java密钥库。

步骤:使用你的浏览器

  1. 访问jcenter和证书导出为.crt文件。 (Firefox 地址栏左侧的锁定图标或Chrome开发人员工具安全性选项卡)
  2. 下载 this工具并运行它。
  3. 选择“打开现有密钥库”按钮 打开JDKPATH/JRE/lib/security中/ cacerts中,密码是“的changeit”
  4. 使用“导入可信证书”按钮导入.crt文件,然后保存而存在

如果你是落后的代理,在gradle.properties,除了设置

systemProp.http.proxyHostsystemProp.http.proxyPort

还设置

systemProp.https.proxyHostsystemProp.https.proxyPort

现在应该罚款。

5

如果您在有限的工作场所工作,你可能会遇到这样的问题

的几件事情的组合为我工作 基本不变的HTTPS访问http

从https:

repositories { 
    jcenter() 
} 

收件人:

repositories { 
     maven { url "http://jcenter.bintray.com" } 
    } 

gradle-wrapper.properties ..

来源:

distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip 

要:

distributionUrl=http\://services.gradle.org/distributions/gradle-3.3-all.zip 

然后

- (optional) File -> Invalidate Caches/Restart` 
- Give a clean build. 

验证:检查您的Gradle控制台。它应该开始通过HTTP从jcenter下载库。

0

它通常发生,当你已经包含了依赖,它不会有仓库参考样mavenCentral()或jcenter()等下载它

我最常做的识别这种依赖性的gradle设置为脱机工作,Android工作室将自动显示一个本地不可用的依赖项,然后在其提供程序github页面中查找依赖项详细信息,例如从哪个存储库中选择并更新您的存储库并将其归入其中。希望它能正常工作

1

好吧,可能我迟到了,但从3.0升级到3.0.1后,我遇到了这个问题。 而这个问题,因为我在受限制的网络工作。

这为我工作的解决方案是如下:

解决方案

第1步:

jcenter()等于https://bintray.com/bintray/jcenter

您需要进口jcenter的cerficate成你的java密钥库。

如何使用您的浏览器?:

访问jcenter和证书导出为.CER文件。 (锁定在Firefox地址栏或Chrome开发者工具secuity选项卡左侧的图标)

第2步: 转到Android的工作室 - >文件 - >设置 - >工具 - >服务器证书 点击“ +“”接受证书。选择导出的证书。

第3步: 文件 - >的Invalidate缓存/重启..

相关问题