gradle + codebuild:无法通过代理访问网络
gradle + codebuild: unable to access the web through the proxy
我在私有网络中 运行ning AWS Codebuild,为此我创建了文件 .gradle/gradle.properties
以使用代理,并且在其中我有以下值:
systemProp.https.proxyHost=<https-proxy-host>
systemProp.https.proxyPort=<https-port>
systemProp.http.proxyHost=<http-proxy-host>
systemProp.http.proxyPort=<http-port>
systemProp.http.nonProxyHosts=localhost|127.0.0.1
我正在使用 AWS 的 Ubuntu 标准映像版本 5.0 进行构建,但是当我 运行 ./gradlew clean build
:
Downloading https://services.gradle.org/distributions/gradle-6.8.3-bin.zip
Exception in thread "main" javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.
老实说,我不确定 gradle 是否知道文件 .gradle/gradle.properties
或没有获取代理值,有什么想法吗?
确保检查 GRADLE_USER_HOME 环境变量。
如果未设置,默认路径为 USER_HOME/.gradle)
最坏的情况 Senario,只是为了确保它不是代理问题,
您可以将 gradle.properties 添加到您的项目中,在 build.gradle 旁边。
实际上有 3 个地方你可以 gradle.properties:
- USER_HOME/.gradle/gradle.properties 这对所有 gradle 项目都是全局的
- 在项目目录中,这是该项目的本地目录
- A 子项目目录
一旦您尝试在项目中使用 gradle 属性但问题没有解决,这可能是代理问题。
当您使用 gradlew 时,您可以尝试前往 ,
[project]/gradle/wrapper/gradle-wrapper.properties
如果尚不存在,请添加此内容,以及代理设置。
distributionUrl=http\://services.gradle.org/distributions/gradle-6.8.3-bin.zip
只需确保从 https 中删除 's'。
虽然这对某些用户来说可能看起来不太好,,接受的答案建议如下
sudo dpkg --purge --force-depends ca-certificates-java
sudo apt-get install ca-certificates-java
然后让 gradlew 干净。
我在私有网络中 运行ning AWS Codebuild,为此我创建了文件 .gradle/gradle.properties
以使用代理,并且在其中我有以下值:
systemProp.https.proxyHost=<https-proxy-host>
systemProp.https.proxyPort=<https-port>
systemProp.http.proxyHost=<http-proxy-host>
systemProp.http.proxyPort=<http-port>
systemProp.http.nonProxyHosts=localhost|127.0.0.1
我正在使用 AWS 的 Ubuntu 标准映像版本 5.0 进行构建,但是当我 运行 ./gradlew clean build
:
Downloading https://services.gradle.org/distributions/gradle-6.8.3-bin.zip
Exception in thread "main" javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.
老实说,我不确定 gradle 是否知道文件 .gradle/gradle.properties
或没有获取代理值,有什么想法吗?
确保检查 GRADLE_USER_HOME 环境变量。
如果未设置,默认路径为 USER_HOME/.gradle)
最坏的情况 Senario,只是为了确保它不是代理问题,
您可以将 gradle.properties 添加到您的项目中,在 build.gradle 旁边。
实际上有 3 个地方你可以 gradle.properties:
- USER_HOME/.gradle/gradle.properties 这对所有 gradle 项目都是全局的
- 在项目目录中,这是该项目的本地目录
- A 子项目目录
一旦您尝试在项目中使用 gradle 属性但问题没有解决,这可能是代理问题。
当您使用 gradlew 时,您可以尝试前往 ,
[project]/gradle/wrapper/gradle-wrapper.properties
如果尚不存在,请添加此内容,以及代理设置。
distributionUrl=http\://services.gradle.org/distributions/gradle-6.8.3-bin.zip
只需确保从 https 中删除 's'。
虽然这对某些用户来说可能看起来不太好,
sudo dpkg --purge --force-depends ca-certificates-java
sudo apt-get install ca-certificates-java
然后让 gradlew 干净。