赞
踩
最近在国内的机器上编译Impala的native-toolchain,没法挂代理,发现编译kudu-1.16时失败了:
FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':buildSrc:compileGroovy'. > Could not resolve all files for configuration ':buildSrc:compileClasspath'. > Could not resolve com.github.ben-manes:gradle-versions-plugin:0.41.0. Required by: project :buildSrc > Could not resolve com.github.ben-manes:gradle-versions-plugin:0.41.0. > Could not get resource 'https://clojars.org/repo/com/github/ben-manes/gradle-versions-plugin/0.41.0/gradle-versions-plugin-0.41.0.pom'. > Could not GET 'https://repo.clojars.org/com/github/ben-manes/gradle-versions-plugin/0.41.0/gradle-versions-plugin-0.41.0.pom'. > Read timed out > Could not resolve gradle.plugin.org.barfuin.gradle.jacocolog:gradle-jacoco-log:1.2.4. Required by: project :buildSrc > Could not resolve gradle.plugin.org.barfuin.gradle.jacocolog:gradle-jacoco-log:1.2.4. > Could not get resource 'https://clojars.org/repo/gradle/plugin/org/barfuin/gradle/jacocolog/gradle-jacoco-log/1.2.4/gradle-jacoco-log-1.2.4.pom'. > Could not GET 'https://repo.clojars.org/gradle/plugin/org/barfuin/gradle/jacocolog/gradle-jacoco-log/1.2.4/gradle-jacoco-log-1.2.4.pom'. > Read timed out > Could not resolve gradle.plugin.com.google.gradle:osdetector-gradle-plugin:1.7.0. Required by: project :buildSrc > Could not resolve gradle.plugin.com.google.gradle:osdetector-gradle-plugin:1.7.0. > Could not get resource 'https://clojars.org/repo/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'. > Could not GET 'https://repo.clojars.org/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'. > Read timed out > Could not resolve gradle.plugin.com.github.spotbugs.snom:spotbugs-gradle-plugin:4.7.0. Required by: project :buildSrc > Could not resolve gradle.plugin.com.github.spotbugs.snom:spotbugs-gradle-plugin:4.7.0. > Could not get resource 'https://clojars.org/repo/gradle/plugin/com/github/spotbugs/snom/spotbugs-gradle-plugin/4.7.0/spotbugs-gradle-plugin-4.7.0.pom'. > Could not GET 'https://repo.clojars.org/gradle/plugin/com/github/spotbugs/snom/spotbugs-gradle-plugin/4.7.0/spotbugs-gradle-plugin-4.7.0.pom'. > Read timed out > Could not resolve io.spring.gradle:propdeps-plugin:0.0.10.RELEASE. Required by: project :buildSrc > Could not resolve io.spring.gradle:propdeps-plugin:0.0.10.RELEASE. > Could not get resource 'https://clojars.org/repo/io/spring/gradle/propdeps-plugin/0.0.10.RELEASE/propdeps-plugin-0.0.10.RELEASE.pom'. > Could not GET 'https://repo.clojars.org/io/spring/gradle/propdeps-plugin/0.0.10.RELEASE/propdeps-plugin-0.0.10.RELEASE.pom'. > Connect to repo.clojars.org:443 [repo.clojars.org/146.75.113.128] failed: connect timed out > Could not resolve net.ltgt.gradle:gradle-errorprone-plugin:2.0.2. Required by: project :buildSrc > Could not resolve net.ltgt.gradle:gradle-errorprone-plugin:2.0.2. > Could not get resource 'https://clojars.org/repo/net/ltgt/gradle/gradle-errorprone-plugin/2.0.2/gradle-errorprone-plugin-2.0.2.pom'. > Could not GET 'https://repo.clojars.org/net/ltgt/gradle/gradle-errorprone-plugin/2.0.2/gradle-errorprone-plugin-2.0.2.pom'. > Read timed out > Could not resolve me.champeau.gradle:jmh-gradle-plugin:0.5.3. Required by: project :buildSrc > Could not resolve me.champeau.gradle:jmh-gradle-plugin:0.5.3. > Could not get resource 'https://clojars.org/repo/me/champeau/gradle/jmh-gradle-plugin/0.5.3/jmh-gradle-plugin-0.5.3.pom'. > Could not GET 'https://repo.clojars.org/me/champeau/gradle/jmh-gradle-plugin/0.5.3/jmh-gradle-plugin-0.5.3.pom'. > Read timed out > Could not resolve com.google.gradle:osdetector-gradle-plugin:1.7.0. Required by: project :buildSrc > com.google.protobuf:protobuf-gradle-plugin:0.8.18 > Could not resolve com.google.gradle:osdetector-gradle-plugin:1.7.0. > Could not get resource 'https://repo.maven.apache.org/maven2/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'. > Could not GET 'https://repo.maven.apache.org/maven2/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'. > Read timed out > Could not resolve commons-lang:commons-lang:2.6. Required by: project :buildSrc > com.google.protobuf:protobuf-gradle-plugin:0.8.18 > Could not resolve commons-lang:commons-lang:2.6. > Could not get resource 'https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.pom'. > Could not GET 'https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.pom'. > Read timed out * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 6m 7s CMakeFiles/init_gradle.dir/build.make:79: recipe for target '../java/gradle/wrapper/gradle-wrapper.jar' failed make[2]: *** [../java/gradle/wrapper/gradle-wrapper.jar] Error 1 make[2]: *** Deleting file '../java/gradle/wrapper/gradle-wrapper.jar' CMakeFiles/Makefile2:1050: recipe for target 'CMakeFiles/init_gradle.dir/all' failed make[1]: *** [CMakeFiles/init_gradle.dir/all] Error 2 Makefile:159: recipe for target 'all' failed make: *** [all] Error 2
于是参考这篇文章配了 ~/.gradle/init.gradle,使用阿里的源。
除了文章里提的,还要加上gradle-plugin和spring-plugin的URL:
allprojects{ repositories { def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/repository/public' def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/repository/public' def ALIYUN_GOOGLE_URL = 'https://maven.aliyun.com/repository/google' def ALIYUN_GRADLE_PLUGIN_URL = 'https://maven.aliyun.com/repository/gradle-plugin' def ALIYUN_SPRING_PLUGIN_URL = 'https://maven.aliyun.com/repository/spring-plugin' all { ArtifactRepository repo -> if(repo instanceof MavenArtifactRepository){ def url = repo.url.toString() if (url.startsWith('https://repo1.maven.org/maven2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL." remove repo } if (url.startsWith('https://jcenter.bintray.com/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL." remove repo } if (url.startsWith('https://dl.google.com/dl/android/maven2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GOOGLE_URL." remove repo } if (url.startsWith('https://plugins.gradle.org/m2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL." remove repo } if (url.startsWith('https://plugins.gradle.org/m2/')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL." remove repo } if (url.startsWith('https://repo.clojars.org/gradle/plugin')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL." remove repo } if (url.startsWith('https://clojars.org/repo/gradle/plugin')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL." remove repo } if (url.startsWith('https://clojars.org/repo/io/spring')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_SPRING_PLUGIN_URL." remove repo } if (url.startsWith('https://repo.spring.io/plugins-release')) { project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_SPRING_PLUGIN_URL." remove repo } } } maven { url ALIYUN_REPOSITORY_URL } maven { url ALIYUN_JCENTER_URL } maven { url ALIYUN_GOOGLE_URL } maven { url ALIYUN_GRADLE_PLUGIN_URL } maven { url ALIYUN_SPRING_PLUGIN_URL } } }
重新编译会发现错误少了很多,但还有一个URL没被替换:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':buildSrc:compileGroovy'.
> Could not resolve all files for configuration ':buildSrc:compileClasspath'.
> Could not resolve gradle.plugin.com.google.gradle:osdetector-gradle-plugin:1.7.0.
Required by:
project :buildSrc
> Could not resolve gradle.plugin.com.google.gradle:osdetector-gradle-plugin:1.7.0.
> Could not get resource 'https://clojars.org/repo/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'.
> Could not GET 'https://repo.clojars.org/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.0/osdetector-gradle-plugin-1.7.0.pom'.
> Connect to repo.clojars.org:443 [repo.clojars.org/151.101.109.128] failed: connect timed out
不知为何这个URL没被替换,尝试直接改 kudu-1.16.0/java/settings.gradle,开头加上如下内容:
pluginManagement {
repositories {
maven {
url 'https://maven.aliyun.com/repository/gradle-plugin'
}
gradlePluginPortal()
}
}
再编译时报了另一个错:
* What went wrong:
Execution failed for task ':buildSrc:compileGroovy'.
> Could not resolve all files for configuration ':buildSrc:compileClasspath'.
> Could not download shadow-6.1.0.jar (com.github.jengelman.gradle.plugins:shadow:6.1.0)
> Could not get resource 'https://jcenter.bintray.com/com/github/jengelman/gradle/plugins/shadow/6.1.0/shadow-6.1.0.jar'.
> Could not GET 'https://jcenter.bintray.com/com/github/jengelman/gradle/plugins/shadow/6.1.0/shadow-6.1.0.jar'.
> The server may not support the client's requested TLS protocol versions: (TLSv1.2, TLSv1.3). You may need to configure the client to allow other protocols to be used. See: https://docs.gradle.org/6.8.3/userguide/build
_environment.html#gradle_system_properties
> Remote host terminated the handshake
然后神奇的事情发生了,我回滚了settings.gradle的改动,发现编译就通过了……
可能中间有些状态或cache之类的改变了,回头再细挖,这里先简单记录一下。
“Gradle Repositories 换用阿里云镜像”
https://luo3.org.cn/posts/snippets/replace-gradle-repositories-with-aliyun-mirrors/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。