Details
-
Type:
Bug
-
Status: Open (View Workflow)
-
Priority:
Major
-
Resolution: Unresolved
-
Component/s: core
-
Environment:CentOS 7.1.1503 VM in VirtualBox 5.0.0, Tomcat 8.0.24, OpenJDK 1.8.0_51-b16, Jenkins 1.625, Bouncy Castle 1.52
-
Similar Issues:
Description
Tomcat throws exceptions and fails to start with bcprov-jdk15on-1.51.jar or later whereas it works fine with bcprov-jdk15on-1.50.jar or earlier. Bouncy Castle developer commented that problem may be in Jenkins. Full log attached.
22-Aug-2015 11:52:53.248 WARNING [NullIdDescriptorMonitor.verifyId] hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.error Failed to instantiate Key[type=org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl, annotation=[none]]; skipping this component com.google.inject.ProvisionException: Guice provision errors: 1) Error injecting constructor, java.lang.VerifyError: (class: org/bouncycastle/openssl/PEMReader$EncryptedPrivateKeyParser, method: parseObject signature: (Lorg/bouncycastle/util/io/pem/PemObject;)Ljava/lang/Object;) Incompatible argument to function at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:20) 1 error at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:52) ... Caused by: java.lang.VerifyError: (class: org/bouncycastle/openssl/PEMReader$EncryptedPrivateKeyParser, method: parseObject signature: (Lorg/bouncycastle/util/io/pem/PemObject;)Ljava/lang/Object;) Incompatible argument to function at org.bouncycastle.openssl.PEMReader.<init>(Unknown Source) at org.bouncycastle.openssl.PEMReader.<init>(Unknown Source) at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.read(InstanceIdentity.java:78)
From Jenkins 1.648 this issue also affects the jclouds plugin;
It fails to launch slaves (into our openstack cloud) with an error like:
As per reporter above we were able to workaround this on our staging system by grabbing bcpkix-jdk15on-1.50.jar and bcprov-jdk15on-1.50.jar from repo1.maven.org, putting them in .../WEB-INF/lib in place of the 1.54 versions delivered with Jenkins 1.650, but are unsure if this is acceptable on our production systems.