我需要通过代理服务器从Gradle进行Web访问,以使用Jenkins的Gradle / Artifactory集成。为了减少问题的可能原因,我在build.gradle中手动添加Artifactory插件并从命令行运行它:apply { apply from: "http://gradle.artifactoryonline.com/gradle/plugins/org/jfrog/buildinfo/build-info-extractor-gradle/1.0.1/artifactoryplugin-1.0.1.gradle"}按照此描述,我在主目录中的.gradle / gradle.properties中指定了以下内容:systemProp.http.proxyHost=hostnamesystemProp.http.proxyPort=8080systemProp.http.proxyUser=de\\usernamesystemProp.http.proxyPassword=xxx使用上面的代理配置(已知可以工作),它会失败:11:33:17.699 [ERROR] [org.gradle.BuildExceptionReporter]引起:java.io.IOException:服务器返回HTTP响应代码:407为URL:http://gradle.artifactoryonline.com/gradle/plugins/org/ jfrog / buildinfo / buildinfo-提取-gradle这个/ 1.0.1 / artifactoryplugin-1.0.1.gradle我有两个代理服务器可供选择,一个总是响应407(需要代理身份验证),另一个响应502(坏网关),所以很明显,使用了proxyHost和proxyPort选项。作为用户名(基于Active Directory用户)包含反斜杠,我都尝试\\和\,但既不工作。指定的用户与登录到计算机和Active Directory的用户不同。此用户的凭据对代理无效,因此我需要能够指定其他用户。在Jenkins或Artifactory的GUI中设置相同的选项。
3 回答
一只甜甜圈
TA贡献1836条经验 获得超5个赞
对Daniel的回应进行了改进:
HTTP Only Proxy配置
gradlew -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128
仅HTTPS代理配置
gradlew -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=3129
HTTP和HTTPS代理配置
gradlew -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=3129
使用用户和密码进行代理配置
gradlew -Dhttp.proxyHost = 127.0.0.1 -Dhttp.proxyPort = 3128 - Dhttps.proxyHost = 127.0.0.1 -Dhttps.proxyPort = 3129 -Dhttps.proxyUser = user -Dhttps.proxyPassword = pass -Dhttp.proxyUser = user -Dhttp。的proxyPassword =通
为我工作(gradle.properties在homedir或项目目录中,构建仍然失败)。感谢您将问题指向gradle,从而提供了此解决方法。
更新 您还可以将这些属性放入gradle-wrapper.properties。
添加回答
举报
0/150
提交
取消