plugin java maven ssl maven-plugin java-11

java - plugin - Maven con JDK 11 falla al descargar una dependencia incorrecta con "la extensión(10) no debe presentarse en server_hello"



dockerfile-maven-plugin maven (3)

Al ejecutar la prueba en mi proyecto con JDK11, obtengo fallas en esta línea cuando llamo a Maven Aether:

Esto sucede cuando se descarga una dependencia incorrecta:

commons-math3: commons-math3

Mi hipótesis es que me estoy enfrentando a un error JDK11 según:

- https://stackoverflow.com/questions/52016415/jdk-11-ssl-error-on-valid-certificate-working-in-previous-versions

Si es el problema, ¿cómo puede esto ser una solución?

Stacktrace parcialmente truncado debido a la limitación de stackoverflow:

[INFO] [ERROR] Failed to execute goal com.lazerycode.jmeter:jmeter-maven-plugin:DEV-SNAPSHOT:configure (configure) on project test-plugins: Failed to collect dependencies at org.apache.jmeter:ApacheJMeter_components:jar:2.13 -> org.apache.jmeter:jorphan:jar:2.13 -> commons-math3:commons-math3:jar:3.4.1: Failed to read artifact descriptor for commons-math3:commons-math3:jar:3.4.1: Could not transfer artifact commons-math3:commons-math3:pom:3.4.1 from/to JBoss (https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/): extension (10) should not be presented in server_hello -> [Help 1] [INFO] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.lazerycode.jmeter:jmeter-maven-plugin:DEV-SNAPSHOT:configure (configure) on project test-plugins: Failed to collect dependencies at org.apache.jmeter:ApacheJMeter_components:jar:2.13 -> org.apache.jmeter:jorphan:jar:2.13 -> commons-math3:commons-math3:jar:3.4.1 [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) [INFO] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51) [INFO] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194) [INFO] at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) [INFO] at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955) [INFO] at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) [INFO] at org.apache.maven.cli.MavenCli.main (MavenCli.java:194) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) [INFO] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) [INFO] at java.lang.reflect.Method.invoke (Method.java:566) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) [INFO] ... [INFO] Caused by: org.eclipse.aether.transfer.ArtifactTransferException: Could not transfer artifact commons-math3:commons-math3:pom:3.4.1 from/to JBoss (https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/): extension (10) should not be presented in server_hello [INFO] at org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed (ArtifactTransportListener.java:52) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run (BasicRepositoryConnector.java:365) [INFO] at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run (RunnableErrorForwarder.java:75) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute (BasicRepositoryConnector.java:583) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get (BasicRepositoryConnector.java:259) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads (DefaultArtifactResolver.java:498) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:399) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:224) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact (DefaultArtifactResolver.java:201) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom (DefaultArtifactDescriptorReader.java:261) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor (DefaultArtifactDescriptorReader.java:192) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.resolveCachedArtifactDescriptor (DefaultDependencyCollector.java:539) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.getArtifactDescriptorResult (DefaultDependencyCollector.java:522) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:411) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.doRecurse (DefaultDependencyCollector.java:507) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:460) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.collectDependencies (DefaultDependencyCollector.java:256) [INFO] at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies (DefaultRepositorySystem.java:282) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:643) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.resolveTestDependenciesAndCopyWithTransitivity (ConfigureJMeterMojo.java:577) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:532) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:515) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.doExecute (ConfigureJMeterMojo.java:327) [INFO] at com.lazerycode.jmeter.mojo.AbstractJMeterMojo.execute (AbstractJMeterMojo.java:233) [INFO] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:134) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) [INFO] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51) [INFO] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194) [INFO] at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) [INFO] at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955) [INFO] at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) [INFO] at org.apache.maven.cli.MavenCli.main (MavenCli.java:194) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) [INFO] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) [INFO] at java.lang.reflect.Method.invoke (Method.java:566) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) [INFO] Caused by: org.apache.maven.wagon.TransferFailedException: extension (10) should not be presented in server_hello [INFO] at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData (AbstractHttpClientWagon.java:1068) [INFO] at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData (AbstractHttpClientWagon.java:962) [INFO] at org.apache.maven.wagon.StreamWagon.getInputStream (StreamWagon.java:126) [INFO] at org.apache.maven.wagon.StreamWagon.getIfNewer (StreamWagon.java:88) [INFO] at org.apache.maven.wagon.StreamWagon.get (StreamWagon.java:61) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter$GetTaskRunner.run (WagonTransporter.java:567) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter.execute (WagonTransporter.java:435) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter.get (WagonTransporter.java:412) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$GetTaskRunner.runTask (BasicRepositoryConnector.java:453) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run (BasicRepositoryConnector.java:360) [INFO] at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run (RunnableErrorForwarder.java:75) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute (BasicRepositoryConnector.java:583) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get (BasicRepositoryConnector.java:259) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads (DefaultArtifactResolver.java:498) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:399) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:224) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact (DefaultArtifactResolver.java:201) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom (DefaultArtifactDescriptorReader.java:261) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor (DefaultArtifactDescriptorReader.java:192) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.resolveCachedArtifactDescriptor (DefaultDependencyCollector.java:539) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.getArtifactDescriptorResult (DefaultDependencyCollector.java:522) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:411) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.doRecurse (DefaultDependencyCollector.java:507) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:460) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.collectDependencies (DefaultDependencyCollector.java:256) [INFO] at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies (DefaultRepositorySystem.java:282) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:643) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.resolveTestDependenciesAndCopyWithTransitivity (ConfigureJMeterMojo.java:577) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:532) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:515) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.doExecute (ConfigureJMeterMojo.java:327) [INFO] at com.lazerycode.jmeter.mojo.AbstractJMeterMojo.execute (AbstractJMeterMojo.java:233) [INFO] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:134) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) [INFO] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51) [INFO] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194) [INFO] at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) [INFO] at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955) [INFO] at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) [INFO] at org.apache.maven.cli.MavenCli.main (MavenCli.java:194) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) [INFO] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) [INFO] at java.lang.reflect.Method.invoke (Method.java:566) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) [INFO] Caused by: javax.net.ssl.SSLHandshakeException: extension (10) should not be presented in server_hello [INFO] at sun.security.ssl.Alert.createSSLException (Alert.java:128) [INFO] at sun.security.ssl.Alert.createSSLException (Alert.java:117) [INFO] at sun.security.ssl.TransportContext.fatal (TransportContext.java:308) [INFO] at sun.security.ssl.TransportContext.fatal (TransportContext.java:264) [INFO] at sun.security.ssl.TransportContext.fatal (TransportContext.java:255) [INFO] at sun.security.ssl.SSLExtensions.<init> (SSLExtensions.java:71) [INFO] at sun.security.ssl.ServerHello$ServerHelloMessage.<init> (ServerHello.java:173) [INFO] at sun.security.ssl.ServerHello$ServerHelloConsumer.consume (ServerHello.java:864) [INFO] at sun.security.ssl.SSLHandshake.consume (SSLHandshake.java:392) [INFO] at sun.security.ssl.HandshakeContext.dispatch (HandshakeContext.java:444) [INFO] at sun.security.ssl.HandshakeContext.dispatch (HandshakeContext.java:421) [INFO] at sun.security.ssl.TransportContext.dispatch (TransportContext.java:178) [INFO] at sun.security.ssl.SSLTransport.decode (SSLTransport.java:164) [INFO] at sun.security.ssl.SSLSocketImpl.decode (SSLSocketImpl.java:1152) [INFO] at sun.security.ssl.SSLSocketImpl.readHandshakeRecord (SSLSocketImpl.java:1063) [INFO] at sun.security.ssl.SSLSocketImpl.startHandshake (SSLSocketImpl.java:402) [INFO] at org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket (SSLConnectionSocketFactory.java:394) [INFO] at org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.connectSocket (SSLConnectionSocketFactory.java:353) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.conn.DefaultHttpClientConnectionOperator.connect (DefaultHttpClientConnectionOperator.java:141) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.conn.PoolingHttpClientConnectionManager.connect (PoolingHttpClientConnectionManager.java:353) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.establishRoute (MainClientExec.java:380) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.execute (MainClientExec.java:236) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.ProtocolExec.execute (ProtocolExec.java:184) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RetryExec.execute (RetryExec.java:88) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RedirectExec.execute (RedirectExec.java:110) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.client.InternalHttpClient.doExecute (InternalHttpClient.java:184) [INFO] at org.apache.maven.wagon.providers.http.httpclient.impl.client.CloseableHttpClient.execute (CloseableHttpClient.java:82) [INFO] at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.execute (AbstractHttpClientWagon.java:834) [INFO] at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData (AbstractHttpClientWagon.java:985) [INFO] at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.fillInputData (AbstractHttpClientWagon.java:962) [INFO] at org.apache.maven.wagon.StreamWagon.getInputStream (StreamWagon.java:126) [INFO] at org.apache.maven.wagon.StreamWagon.getIfNewer (StreamWagon.java:88) [INFO] at org.apache.maven.wagon.StreamWagon.get (StreamWagon.java:61) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter$GetTaskRunner.run (WagonTransporter.java:567) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter.execute (WagonTransporter.java:435) [INFO] at org.eclipse.aether.transport.wagon.WagonTransporter.get (WagonTransporter.java:412) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$GetTaskRunner.runTask (BasicRepositoryConnector.java:453) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run (BasicRepositoryConnector.java:360) [INFO] at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run (RunnableErrorForwarder.java:75) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute (BasicRepositoryConnector.java:583) [INFO] at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get (BasicRepositoryConnector.java:259) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads (DefaultArtifactResolver.java:498) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:399) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:224) [INFO] at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact (DefaultArtifactResolver.java:201) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom (DefaultArtifactDescriptorReader.java:261) [INFO] at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor (DefaultArtifactDescriptorReader.java:192) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.resolveCachedArtifactDescriptor (DefaultDependencyCollector.java:539) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.getArtifactDescriptorResult (DefaultDependencyCollector.java:522) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:411) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.doRecurse (DefaultDependencyCollector.java:507) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:460) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.process (DefaultDependencyCollector.java:353) [INFO] at org.eclipse.aether.internal.impl.DefaultDependencyCollector.collectDependencies (DefaultDependencyCollector.java:256) [INFO] at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies (DefaultRepositorySystem.java:282) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:643) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyTransitiveRuntimeDependenciesToLibDirectory (ConfigureJMeterMojo.java:674) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.resolveTestDependenciesAndCopyWithTransitivity (ConfigureJMeterMojo.java:577) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:532) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.copyExplicitLibraries (ConfigureJMeterMojo.java:515) [INFO] at com.lazerycode.jmeter.mojo.ConfigureJMeterMojo.doExecute (ConfigureJMeterMojo.java:327) [INFO] at com.lazerycode.jmeter.mojo.AbstractJMeterMojo.execute (AbstractJMeterMojo.java:233) [INFO] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:134) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) [INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) [INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) [INFO] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51) [INFO] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) [INFO] at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194) [INFO] at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) [INFO] at org.apache.maven.cli.MavenCli.execute (MavenCli.java:955) [INFO] at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) [INFO] at org.apache.maven.cli.MavenCli.main (MavenCli.java:194) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) [INFO] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) [INFO] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) [INFO] at java.lang.reflect.Method.invoke (Method.java:566) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) [INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)


Introducción adicional

La introducción informativa rápida del problema fue provista por @cocorossello en su respuesta, solo agregaré que todo comenzó a partir de la lista de correo de Java aquí >> .

Este mensaje también incluye una muestra rápida para reproducir el "problema":

import java.net.URL; import java.io.InputStream; public class Fetch { public static void main(final String[] args) throws Exception { final URL targetURL = new URL("https://repository.jboss.org/nexus/content/groups/public/javax/media/jai-core/1.1.3/jai-core-1.1.3.pom"); try (final InputStream is = targetURL.openConnection().getInputStream()) { is.read(); } System.out.println("Done"); } }

Solución del lado del cliente:

El problema está relacionado con el módulo / biblioteca JSSE ( Java Secure Socket Extension ) - la implementación interna de Java para conexiones seguras SSL / TLS .

SOLUCIÓN DE TRABAJO : Entonces, para solucionar este problema, necesitamos utilizar una implementación SSL / TLS diferente, por ejemplo, Bouncy Castle

He creado un pequeño proyecto en GitHub como prueba de concepto: jdk11-server_hello-workaround , la clase principal es FetchWorkaround.java , que se ve así:

import org.bouncycastle.crypto.tls.*; import java.io.*; import java.net.InetAddress; import java.net.Socket; import java.security.SecureRandom; public class FetchWorkaround { private static final String HOST = "repository.jboss.org"; private static final int PORT = 443; private static final String RESOURCE = "/nexus/content/groups/public/javax/media/jai-core/1.1.3/jai-core-1.1.3.pom"; public static void main(String[] args) throws Exception { TlsClientProtocol protocol = getTlsClientProtocol(); sendRequest(protocol); readResponseStream(protocol.getInputStream()); } private static void readResponseStream(InputStream input) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(input)); String line; try { while ((line = reader.readLine()) != null) { System.out.println(line); } } catch (TlsNoCloseNotifyException exception) { // do nothing } } private static void sendRequest(TlsClientProtocol protocol) throws IOException { OutputStream output = protocol.getOutputStream(); output.write(("GET " + RESOURCE + " HTTP/1.1/r/n").getBytes("UTF-8")); output.write(("Host: " + HOST + "/r/n").getBytes("UTF-8")); output.write("Connection: close/r/n".getBytes("UTF-8")); // To force socket close immediately. output.write("/r/n".getBytes("UTF-8")); // HTTP 1.1 requirement: last line must be empty line. output.flush(); } private static TlsClientProtocol getTlsClientProtocol() throws IOException { SecureRandom secureRandom = new SecureRandom(); Socket socket = new Socket(InetAddress.getByName(HOST), PORT); TlsClientProtocol protocol = new TlsClientProtocol(socket.getInputStream(), socket.getOutputStream(), secureRandom); DefaultTlsClient client = new DefaultTlsClient() { public TlsAuthentication getAuthentication() throws IOException { TlsAuthentication auth = new TlsAuthentication() { public void notifyServerCertificate(Certificate serverCertificate) throws IOException { } public TlsCredentials getClientCredentials(CertificateRequest certificateRequest) throws IOException { return null; } }; return auth; } }; protocol.connect(client); return protocol; } }

Se conecta al host (el de Fetch.java ) mediante un socket al definir TlsClientProtocol y envía una solicitud GET al recurso requerido (el mismo pom.xml ), el resultado es el siguiente:

HTTP/1.1 200 OK Date: Wed, 26 Sep 2018 04:40:54 GMT Server: Nexus/2.14.6-02 <... other headers ...> <?xml version="1.0"?> <project xmlns="http://maven.apache.org/POM/4.0.0" <... etc ...> <groupId>javax.media</groupId> <artifactId>jai-core</artifactId> <version>1.1.3</version> <... etc ...>

Entonces pom.xml fue recuperado exitosamente.

Información Adicional

  1. PoC muestra que es posible manejar el problema relacionado con server_hello en el lado del cliente, pero puede llevar mucho tiempo (especialmente para reemplazar la lógica relacionada con Aether ).

  2. En la respuesta a esta pregunta >> se muestra cómo descargar datos binarios utilizando sockets: solo un método auxiliar para manejar los encabezados en la parte superior de la respuesta.

  3. [Requiere acceso a la máquina virtual] Aquí >> es el manual sobre cómo configurar Bouncy Castle Provider en el nivel de Java .

  4. [Requiere acceso a la máquina virtual] En caso de que sea posible actualizar JDK en el lado de la máquina virtual (compilación / CI), puede ser razonable realizar una compilación JDK personalizada mediante el uso de la corrección de errores PATCH >> : solo afecta a sun.security.ssl.SSLExtensions Clase sun.security.ssl.SSLExtensions - o simplemente utilizando la estructura de fuentes relacionadas >>


OpenSSL 1.1.1 es más estricto con la especificación, por lo que no es estrictamente un error, pero es algo que afectará a algunos usuarios. Se resolvió en JDK 12 y se dirigió a JDK 11.0.2, por lo que el parche tomará un tiempo (el backport es https://bugs.openjdk.java.net/browse/JDK-8210005 ).

En mi caso hice una solución utilizando nginx como un "proxy SSL":

server { listen 80; server_name myjbossrepository.mydomain.com; location / { proxy_set_header Host repository.jboss.org; proxy_pass https://repository.jboss.org/; proxy_ssl_session_reuse off; proxy_redirect off; } }

Y luego tendrá que configurar su URL del repositorio como https://myjbossrepository.mydomain.com/nexus/content/repositories/thirdparty-releases/

También puedes usar tu propio certificado si quieres:

server { listen 443 http2 ssl; server_name myjbossrepository.mydomain.com; ssl_certificate /etc/conf/letsencryptcertificates/live/myjbossrepository.mydomain.com/fullchain.pem; ssl_certificate_key /etc/conf/letsencryptcertificates/live/myjbossrepository.mydomain.com/privkey.pem; location / { proxy_set_header Host repository.jboss.org; proxy_pass https://repository.jboss.org/; proxy_ssl_session_reuse off; proxy_redirect off; } }


Tengo el mismo problema en el proyecto Activiti cuando intento construir con OpenJDK 11 debido a una dependencia de Drools que a su vez intenta extraer sus propias dependencias transitivas del repositorio de JBoss en lugar de la central de Maven.

Mientras se solucionaba el problema en el repositorio de JBoss Nexus https://issues.jboss.org/browse/NEXUS-181 o JDK 11, lo solucioné en el lado del cliente mediante el uso de un archivo settings.xml personalizado que establece jcenter como un espejo de la repo jboss:

<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <mirrors> <!-- use this mirror with OpenJDK 11 as a workaround for https://bugs.openjdk.java.net/browse/JDK-8210005 and https://issues.jboss.org/browse/NEXUS-181 --> <mirror> <id>jboss-public-repository-group-central-mirror</id> <url>https://jcenter.bintray.com</url> <mirrorOf>jboss-public-repository-group</mirrorOf> </mirror> </mirrors> </settings>

y llamando a mi compilación con: mvn -s settings.xml install