Java SSL handshake_failure error in Netbeans using Maven Plugin
I’m trying to compile a Maven project in Netbeans, which, during the build process, is trying to download files from a remote server. The process fails with handshake_failure. I’ve tried to add multiple options to the Maven plug-in in Netbeans to no avail. I tried:
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true -Dhttps.protocols="TLSv1"
Oracle’s explanation of the debug output isn’t of much help. I used the "-Djavax.net.debug=all" option to get the build debug output below:
cmd /c "\"\"C:\\Program Files\\NetBeans 8.0.2\\java\\maven\\bin\\mvn.bat\" -Dmaven.ext.class.path=C:\\Users\\Max\\AppData\\Roaming\\NetBeans\\8.0.2\\maven-nblib\\netbeans-eventspy.jar -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true -Dhttps.protocols=TLSv1 -Djavax.net.debug=all clean install\"" Scanning for projects... trustStore is: C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts trustStore type is : jks trustStore provider is : init truststore adding as trusted cert: Subject: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US Issuer: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US ... ... trigger seeding of SecureRandom done seeding SecureRandom trustStore is: C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts trustStore type is : jks trustStore provider is : init truststore adding as trusted cert: ... ... trigger seeding of SecureRandom done seeding SecureRandom Downloading: http://www.dukascopy.com/client/jforexlib/publicrepo/com/dukascopy/dds2/DDS2-jClient-JForex/3.6.19/DDS2-jClient-JForex-3.6.19.pom pool-1-thread-1, setSoTimeout(1800000) called Allow unsafe renegotiation: false Allow legacy hello messages: true Is initial handshake: true Is secure renegotiation: false pool-1-thread-1, setSoTimeout(1800000) called Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 %% No cached client session *** ClientHello, TLSv1 RandomCookie: GMT: 1594509174 bytes = { 243, 62, 231, 63, 139, 40, 217, 136, 4, 46, 2, 173, 244, 20, 202, 106, 28, 255, 51, 135, 163, 250, 254, 217, 85, 133, 187, 126 } Session ID: {} Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDH_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_EMPTY_RENEGOTIATION_INFO_SCSV] Compression Methods: { 0 } Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1} Extension ec_point_formats, formats: [uncompressed] *** [write] MD5 and SHA1 hashes: len = 151 0000: 01 00 00 93 03 01 5F 0A 47 76 F3 3E E7 3F 8B 28 ......_.Gv.>.?.( 0010: D9 88 04 2E 02 AD F4 14 CA 6A 1C FF 33 87 A3 FA .........j..3... 0020: FE D9 55 85 BB 7E 00 00 2C C0 0A C0 14 00 35 C0 ..U.....,.....5. 0030: 05 C0 0F 00 39 00 38 C0 09 C0 13 00 2F C0 04 C0 ....9.8...../... 0040: 0E 00 33 00 32 C0 08 C0 12 00 0A C0 03 C0 0D 00 ..3.2........... 0050: 16 00 13 00 FF 01 00 00 3E 00 0A 00 34 00 32 00 ........>...4.2. 0060: 17 00 01 00 03 00 13 00 15 00 06 00 07 00 09 00 ................ 0070: 0A 00 18 00 0B 00 0C 00 19 00 0D 00 0E 00 0F 00 ................ 0080: 10 00 11 00 02 00 12 00 04 00 05 00 14 00 08 00 ................ 0090: 16 00 0B 00 02 01 00 ....... pool-1-thread-1, WRITE: TLSv1 Handshake, length = 151 [Raw write]: length = 156 0000: 16 03 01 00 97 01 00 00 93 03 01 5F 0A 47 76 F3 ..........._.Gv. 0010: 3E E7 3F 8B 28 D9 88 04 2E 02 AD F4 14 CA 6A 1C >.?.(.........j. 0020: FF 33 87 A3 FA FE D9 55 85 BB 7E 00 00 2C C0 0A .3.....U.....,.. 0030: C0 14 00 35 C0 05 C0 0F 00 39 00 38 C0 09 C0 13 ...5.....9.8.... 0040: 00 2F C0 04 C0 0E 00 33 00 32 C0 08 C0 12 00 0A ./.....3.2...... 0050: C0 03 C0 0D 00 16 00 13 00 FF 01 00 00 3E 00 0A .............>.. 0060: 00 34 00 32 00 17 00 01 00 03 00 13 00 15 00 06 .4.2............ 0070: 00 07 00 09 00 0A 00 18 00 0B 00 0C 00 19 00 0D ................ 0080: 00 0E 00 0F 00 10 00 11 00 02 00 12 00 04 00 05 ................ 0090: 00 14 00 08 00 16 00 0B 00 02 01 00 ............ [Raw read]: length = 5 0000: 15 03 01 00 02 ..... [Raw read]: length = 2 0000: 02 28 .( pool-1-thread-1, READ: TLSv1 Alert, length = 2 pool-1-thread-1, RECV TLSv1.2 ALERT: fatal, handshake_failure pool-1-thread-1, called closeSocket() pool-1-thread-1, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure pool-1-thread-1, called close() pool-1-thread-1, called closeInternal(true) pool-1-thread-1, called close() pool-1-thread-1, called closeInternal(true) pool-1-thread-1, called close() pool-1-thread-1, called closeInternal(true) trustStore is: C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts trustStore type is : jks trustStore provider is : init truststore adding as trusted cert: ... ... trigger seeding of SecureRandom done seeding SecureRandom Downloading: http://repo.maven.apache.org/maven2/com/dukascopy/dds2/DDS2-jClient-JForex/3.6.19/DDS2-jClient-JForex-3.6.19.pom trustStore is: C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts trustStore type is : jks trustStore provider is : init truststore adding as trusted cert: Subject: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US Issuer: CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US Algorithm: RSA; Serial number: 0xc3517 Valid from Mon Jun 21 00:00:00 EDT 1999 until Mon Jun 22 00:00:00 EDT 2020 adding as trusted cert: ... ... trigger seeding of SecureRandom done seeding SecureRandom Downloading: http://www.dukascopy.com/client/jforexlib/publicrepo/com/dukascopy/api/JForex-API/2.13.90/JForex-API-2.13.90.pom pool-3-thread-1, setSoTimeout(1800000) called Allow unsafe renegotiation: false Allow legacy hello messages: true Is initial handshake: true Is secure renegotiation: false pool-3-thread-1, setSoTimeout(1800000) called Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 for TLSv1 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 for TLSv1 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 Ignoring unsupported cipher suite: TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 %% No cached client session *** ClientHello, TLSv1 RandomCookie: GMT: 1594509175 bytes = { 202, 169, 233, 171, 134, 58, 229, 244, 130, 132, 57, 64, 32, 52, 14, 201, 13, 210, 98, 83, 222, 207, 99, 23, 103, 7, 206, 164 } Session ID: {} Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDH_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_EMPTY_RENEGOTIATION_INFO_SCSV] Compression Methods: { 0 } Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1} Extension ec_point_formats, formats: [uncompressed] *** [write] MD5 and SHA1 hashes: len = 151 0000: 01 00 00 93 03 01 5F 0A 47 77 CA A9 E9 AB 86 3A ......_.Gw.....: 0010: E5 F4 82 84 39 40 20 34 0E C9 0D D2 62 53 DE CF ....9@ 4....bS.. 0020: 63 17 67 07 CE A4 00 00 2C C0 0A C0 14 00 35 C0 c.g.....,.....5. 0030: 05 C0 0F 00 39 00 38 C0 09 C0 13 00 2F C0 04 C0 ....9.8...../... 0040: 0E 00 33 00 32 C0 08 C0 12 00 0A C0 03 C0 0D 00 ..3.2........... 0050: 16 00 13 00 FF 01 00 00 3E 00 0A 00 34 00 32 00 ........>...4.2. 0060: 17 00 01 00 03 00 13 00 15 00 06 00 07 00 09 00 ................ 0070: 0A 00 18 00 0B 00 0C 00 19 00 0D 00 0E 00 0F 00 ................ 0080: 10 00 11 00 02 00 12 00 04 00 05 00 14 00 08 00 ................ 0090: 16 00 0B 00 02 01 00 ....... pool-3-thread-1, WRITE: TLSv1 Handshake, length = 151 [Raw write]: length = 156 0000: 16 03 01 00 97 01 00 00 93 03 01 5F 0A 47 77 CA ..........._.Gw. 0010: A9 E9 AB 86 3A E5 F4 82 84 39 40 20 34 0E C9 0D ....:....9@ 4... 0020: D2 62 53 DE CF 63 17 67 07 CE A4 00 00 2C C0 0A .bS..c.g.....,.. 0030: C0 14 00 35 C0 05 C0 0F 00 39 00 38 C0 09 C0 13 ...5.....9.8.... 0040: 00 2F C0 04 C0 0E 00 33 00 32 C0 08 C0 12 00 0A ./.....3.2...... 0050: C0 03 C0 0D 00 16 00 13 00 FF 01 00 00 3E 00 0A .............>.. 0060: 00 34 00 32 00 17 00 01 00 03 00 13 00 15 00 06 .4.2............ 0070: 00 07 00 09 00 0A 00 18 00 0B 00 0C 00 19 00 0D ................ 0080: 00 0E 00 0F 00 10 00 11 00 02 00 12 00 04 00 05 ................ 0090: 00 14 00 08 00 16 00 0B 00 02 01 00 ............ [Raw read]: length = 5 0000: 15 03 01 00 02 ..... [Raw read]: length = 2 0000: 02 28 .( pool-3-thread-1, READ: TLSv1 Alert, length = 2 pool-3-thread-1, RECV TLSv1.2 ALERT: fatal, handshake_failure pool-3-thread-1, called closeSocket() pool-3-thread-1, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure pool-3-thread-1, called close() pool-3-thread-1, called closeInternal(true) pool-3-thread-1, called close() pool-3-thread-1, called closeInternal(true) pool-3-thread-1, called close() pool-3-thread-1, called closeInternal(true) trustStore is: C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts trustStore type is : jks trustStore provider is : init truststore adding as trusted cert: ... ... trigger seeding of SecureRandom done seeding SecureRandom Downloading: http://repo.maven.apache.org/maven2/com/dukascopy/api/JForex-API/2.13.90/JForex-API-2.13.90.pom ------------------------------------------------------------------------ BUILD FAILURE ------------------------------------------------------------------------ Total time: 4.643s Finished at: Sat Jul 11 19:12:56 EDT 2020 Final Memory: 7M/155M ------------------------------------------------------------------------ Finalizer, called close() Finalizer, called closeInternal(true) Finalizer, called close() Finalizer, called closeInternal(true) Failed to execute goal on project JForex-3-SDK: Could not resolve dependencies for project com.dukascopy.dds2:JForex-3-SDK:jar:3.6.19: Failed to collect dependencies for [com.dukascopy.dds2:DDS2-jClient-JForex:jar:3.6.19 (compile), com.dukascopy.api:JForex-API:jar:sources:2.13.90 (compile)]: Failed to read artifact descriptor for com.dukascopy.dds2:DDS2-jClient-JForex:jar:3.6.19: Could not transfer artifact com.dukascopy.dds2:DDS2-jClient-JForex:pom:3.6.19 from/to dc_public (http://www.dukascopy.com/client/jforexlib/publicrepo/): Received fatal alert: handshake_failure -> [Help 1] To see the full stack trace of the errors, re-run Maven with the -e switch. Re-run Maven using the -X switch to enable full debug logging. For more information about the errors and possible solutions, please read the following articles: [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
I also tried the Unlimited strength jurisdiction option as suggested in this Reply to similar question but that didn’t help either. Any Ideas?