I tried to run Gradle on Windows 11 and I get the below error. It seems improbable that Digicert actually has a problem, and running the same command on a different Windows 11 machine proceeds fine even though the certs are identical. Thus I wonder if it is something with my JRE environment or Gradle installation.
How do I fix this? Is there a workaround?
$ ./gradlew buildjob1
Downloading https://services.gradle.org/distributions/gradle-7.1.1-bin.zip
Exception in thread "main" javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.h: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is:
java.security.cert.CertPathValidatorException: The certificate issued by CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.jsse2.j.a(j.java:31)
at com.ibm.jsse2.as.a(as.java:262)
at com.ibm.jsse2.C.a(C.java:515)
at com.ibm.jsse2.C.a(C.java:11)
at com.ibm.jsse2.D.a(D.java:720)
at com.ibm.jsse2.D.a(D.java:635)
at com.ibm.jsse2.C.r(C.java:44)
at com.ibm.jsse2.C.a(C.java:184)
at com.ibm.jsse2.as.a(as.java:481)
at com.ibm.jsse2.as.i(as.java:130)
at com.ibm.jsse2.as.a(as.java:483)
at com.ibm.jsse2.as.startHandshake(as.java:160)
at com.ibm.net.ssl.www2.protocol.https.c.afterConnect(c.java:12)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.java:15)
at sun.net.www.protocol.http.HttpURLConnection.followRedirect0(HttpURLConnection.java:2678)
at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2600)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1785)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1456)
at com.ibm.net.ssl.www2.protocol.https.b.getInputStream(b.java:42)
at org.gradle.wrapper.Download.downloadInternal(Download.java:100)
at org.gradle.wrapper.Download.download(Download.java:80)
at org.gradle.wrapper.Install$1.call(Install.java:68)
at org.gradle.wrapper.Install$1.call(Install.java:48)
at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
at org.gradle.wrapper.Install.createDist(Install.java:48)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
Caused by: com.ibm.jsse2.util.h: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is:
java.security.cert.CertPathValidatorException: The certificate issued by CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.jsse2.util.f.a(f.java:21)
at com.ibm.jsse2.util.f.b(f.java:51)
at com.ibm.jsse2.util.e.a(e.java:19)
at com.ibm.jsse2.aA.a(aA.java:204)
at com.ibm.jsse2.aA.a(aA.java:160)
at com.ibm.jsse2.aA.checkServerTrusted(aA.java:207)
at com.ibm.jsse2.D.a(D.java:67)
... 22 more
Caused by: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is:
java.security.cert.CertPathValidatorException: The certificate issued by CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.PKIXCertPathBuilderImpl.engineBuild(PKIXCertPathBuilderImpl.java:422)
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)
at com.ibm.jsse2.util.f.a(f.java:153)
... 28 more
Caused by: java.security.cert.CertPathValidatorException: The certificate issued by CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.BasicChecker.<init>(BasicChecker.java:111)
at com.ibm.security.cert.PKIXCertPathValidatorImpl.engineValidate(PKIXCertPathValidatorImpl.java:199)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.myValidator(PKIXCertPathBuilderImpl.java:749)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.buildCertPath(PKIXCertPathBuilderImpl.java:661)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.buildCertPath(PKIXCertPathBuilderImpl.java:607)
at com.ibm.security.cert.PKIXCertPathBuilderImpl.engineBuild(PKIXCertPathBuilderImpl.java:368)
... 30 more
Caused by: java.security.cert.CertPathValidatorException: Certificate chaining error
at com.ibm.security.cert.CertPathUtil.findIssuer(CertPathUtil.java:316)
at com.ibm.security.cert.BasicChecker.<init>(BasicChecker.java:108)
... 35 more
Java info:
$ $JAVA_HOME/bin/java -version
java version "1.8.0"
Java(TM) SE Runtime Environment (build pwa6480sr3ifix-20160713_01(SR3+IX90174+IV85763))
IBM J9 VM (build 2.8, JRE 1.8.0 Windows 10 amd64-64 Compressed References 20160713_311397 (JIT enabled, AOT enabled)
J9VM - R28_Java8_SR3_20160713_0915_B311397
JIT - tr.r14.java.green_20160329_114288
GC - R28_Java8_SR3_20160713_0915_B311397_CMPRSS
J9CL - 20160713_311397)
JCL - 20160421_01 based on Oracle jdk8u91-b14