UPM Self-Update fails when updating from UPM 2.7.8 or 2.7.9 to newer versions

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

UPM 2.7.8 or 2.7.9 is currently installed.  Upon attempting to run the self-update for UPM, the following appears in the atlassian-jira.log:

2012-12-10 08:05:45,208 Spring executor 26 ERROR admin 688x169x4 l98x80 192.166.201.94 /rest/plugins/1.0/ [plugin.osgi.factory.OsgiPlugin] Unable to start the Spring context for plugin com.atlassian.upm.atlassian-universal-plugin-manager-selfupdate-plugin
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'updateParametersFactory' defined in URL [bundle://122.0:0/META-INF/spring/atlassian-plugins-components.xml]: Unsatisfied dependency expressed through constructor argument with index 0 of type [com.atlassian.sal.api.pluginsettings.PluginSettingsFactory]: : Error loading class [com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager] for bean with name 'simpleAsyncTaskManager' defined in URL [bundle://122.0:0/META-INF/spring/atlassian-plugins-components.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager not found from bundle [Atlassian Universal Plugin Manager Self-Update Plugin (com.atlassian.upm.atlassian-universal-plugin-manager-selfupdate-plugin)]; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager] for bean with name 'simpleAsyncTaskManager' defined in URL [bundle://122.0:0/META-INF/spring/atlassian-plugins-components.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager not found from bundle [Atlassian Universal Plugin Manager Self-Update Plugin (com.atlassian.upm.atlassian-universal-plugin-manager-selfupdate-plugin)]
	at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:591)
	at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
    ...
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager] for bean with name 'simpleAsyncTaskManager' defined in URL [bundle://122.0:0/META-INF/spring/atlassian-plugins-components.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager not found from bundle [Atlassian Universal Plugin Manager Self-Update Plugin (com.atlassian.upm.atlassian-universal-plugin-manager-selfupdate-plugin)]
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1144)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:524)
    ...
Caused by: java.lang.NoClassDefFoundError: com.atlassian.upm.selfupdate.async.SimpleAsyncTaskManager not found from bundle [Atlassian Universal Plugin Manager Self-Update Plugin (com.atlassian.upm.atlassian-universal-plugin-manager-selfupdate-plugin)]
	at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:112)
	at org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
	at org.springframework.util.ClassUtils.forName(ClassUtils.java:211)
	at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:385)
	at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1138)
	... 30 more
Caused by: java.lang.NoClassDefFoundError: org/springframework/beans/factory/DisposableBean
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    ...
Caused by: java.lang.ClassNotFoundException: org.springframework.beans.factory.DisposableBean
	at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772)
	at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73)
	at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
	... 47 more

Cause

This is caused by a known bug in the UPM, tracked under UPM-2960.

Workaround

If you currently have UPM 2.7.8 or 2.7.9 installed and wish to upgrade UPM, you will need to do so manually, as per our Updating UPM by file replacement documentation.

Last modified on Mar 30, 2016

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.