Bamboo fails to start with NullPointerException at com.thoughtworks.xstream.mapper.ClassAliasingMapper.addClassAlias
Platform Notice: Data Center - This article applies to Atlassian products on the Data Center platform.
Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles for non-Data Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
Bamboo fails to start with the below error being present in the $BAMBOO_HOME/atlassian-bamboo.log
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'deploymentsInProgressService' defined in class path resource [applicationContextDeploymentsServices.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.bamboo.deployments.runtime.DeploymentsInProgressServiceImpl]: Constructor threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:283)
...
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:367)
... 57 more
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.bamboo.deployments.runtime.DeploymentsInProgressServiceImpl]: Constructor threw exception; nested exception is java.lang.NullPointerException
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:182)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:276)
... 66 more
Caused by: java.lang.NullPointerException
at com.thoughtworks.xstream.mapper.ClassAliasingMapper.addClassAlias(ClassAliasingMapper.java:37)
at com.thoughtworks.xstream.XStream.alias(XStream.java:1511)
at com.thoughtworks.xstream.XStream.setupAliases(XStream.java:921)
...
at com.thoughtworks.xstream.XStream.<init>(XStream.java:397)
at com.atlassian.bamboo.persister.xstream.CustomizableXStreamFactory$CustomXStream.<init>(CustomizableXStreamFactory.java:213)
at com.atlassian.bamboo.persister.xstream.CustomizableXStreamFactory.createCompactXStream(CustomizableXStreamFactory.java:160)
at com.atlassian.bamboo.deployments.runtime.DeploymentsInProgressServiceImpl.<init>(DeploymentsInProgressServiceImpl.java:42)
...
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:170)
... 68 more
Cause
We've found this occurs with incompatible or incomplete / private JDK builds (e.g. some distributions incorrectly compiled from source). For example:
2019-10-23 07:16:05,963 INFO [localhost-startStop-1] [lifecycle] Starting Bamboo 6.10.3 (build #61008 Fri Sep 27 12:36:01 UTC 2019) using Java 1.8.0_222 from Private Build
Solution
Install a supported version of the JDK. At the time of writing (Bamboo 6.10x), this is JDK 8:
If you're looking for a free distribution of compiled OpenJDK binaries, we endorse Adopt OpenJDK: