Unable to start the plugin container for Jira Cloud Migration Assistant plugin
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs 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
Admin sees errors on the logs when attempting to enable the Jira Cloud Migration Assistant plugin, or the errors can be found during startup where the plugin fails to get enabled.
Plugin Marketplace link for reference:
Environment
9.4.6
May also be seen on other versions - the key factor is not having a compatible JSM version.
Diagnosis
On the logs there will be several references to packages related to Jira Service Management, formerly known as Jira Service Desk (jsd).
On Jira, go to Administration (⚙ icon) > Applications > Versions & licenses and you may see that your installed version of Jira Service Management is not compatible with your current version of Jira Software.
If your version is already compatible, please, review the contents of your <installed_plugins> directory as described on this article as you may have older version of JSM impacting startup.
Jira Service Management Upgrade Failed With Error "Failed to resolve plugin dependencies within OBR"
On startup you may see the following:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
'com.atlassian.jira.migration.jira-migration-plugin' - 'Jira Cloud Migration Assistant' failed to load.
Error creating bean with name 'projectExporter' defined in URL [bundle://319ce1d2-910c-459f-9651-05bc96eba6c8_105.0:1/com/atlassian/jira/migration/export/core/project/ProjectExporter.class]: Unsatisfied dependency expressed through cons
tructor parameter 16; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jsdExportService' defined in OSGi resource[classpath:com/atlassian/jira/migration/config/MainSpringConfiguration.class|bnd
.id=105|bnd.sym=com.atlassian.jira.migration.jira-migration-plugin]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.jira.migration.export.serv
icedesk.service.JsdExportService]: Factory method 'jsdExportService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution faile
d; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
Error creating bean with name 'jsdExportService' defined in OSGi resource[classpath:com/atlassian/jira/migration/config/MainSpringConfiguration.class|bnd.id=105|bnd.sym=com.atlassian.jira.migration.jira-migration-plugin]: Bean i
nstantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.jira.migration.export.servicedesk.service.JsdExportService]: Factory method 'jsdExportService' threw
exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspec
t Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
Failed to instantiate [com.atlassian.jira.migration.export.servicedesk.service.JsdExportService]: Factory method 'jsdExportService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationExcep
tion: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataRea
der] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.
servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
com/atlassian/servicedesk/api/ServiceDesk
com.atlassian.servicedesk.api.ServiceDesk not found by com.atlassian.jira.migration.jira-migration-plugin [105]
It was loaded from /opt/jira-home/plugins/installed-plugins/plugin.14742412129347025761.jira-migration-plugin-1.6.6.jar
While attempting to enable the plugin you may see this:
1
2
3
2023-06-01 15:34:30,864+0000 ThreadPoolAsyncTaskExecutor::Thread 31 ERROR mmladmin 934x519x1 swivwu 106.220.255.29,10.83.21.18 /rest/plugins/1.0/com.atlassian.jira.migration.jira-migration-plugin-key [c.a.p.osgi.factory.OsgiPlugin] Unable to start the
plugin container for plugin 'com.atlassian.jira.migration.jira-migration-plugin'
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'projectExporter' defined in URL [bundle://319ce1d2-910c-459f-9651-05bc96eba6c8_105.0:1/com/atlassian/jira/migration/export/core/project/ProjectExporter.class]: Unsatisfied dependency expressed through constructor parameter 16; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jsdExportService' defined in OSGi resource[classpath:com/atlassian/jira/migration/config/MainSpringConfiguration.class|bnd.id=105|bnd.sym=com.atlassian.jira.migration.jira-migration-plugin]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.jira.migration.export.servicedesk.service.JsdExportService]: Factory method 'jsdExportService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
1
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jsdExportService' defined in OSGi resource[classpath:com/atlassian/jira/migration/config/MainSpringConfiguration.class|bnd.id=105|bnd.sym=com.atlassian.jira.migration.jira-migration-plugin]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.jira.migration.export.servicedesk.service.JsdExportService]: Factory method 'jsdExportService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
1
2
3
4
5
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.jira.migration.export.servicedesk.service.JsdExportService]: Factory method 'jsdExportService' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
... 33 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serviceDeskCoreDataReader': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Caused by: java.lang.IllegalStateException: Failed to introspect Class [com.atlassian.jira.migration.export.db.servicedesk.ServiceDeskCoreDataReader] from ClassLoader [com.atlassian.jira.migration.jira-migration-plugin [105]]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:485)
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:267)
... 59 more
Caused by: java.lang.NoClassDefFoundError: com/atlassian/servicedesk/api/ServiceDesk
at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3166)
at java.base/java.lang.Class.getDeclaredMethods(Class.java:2309)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:467)
... 61 more
Caused by: java.lang.ClassNotFoundException: com.atlassian.servicedesk.api.ServiceDesk not found by com.atlassian.jira.migration.jira-migration-plugin [105]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1585)
at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1970)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 65 more
Cause
An incompatible version of Jira Service Management is installed or and older version is still on <installed_plugins> directory causing conflicts on startup due to missing dependencies.
Solution
If you have an incompatible version of JSM:
On Jira, go to Administration (⚙ icon) > Applications > Versions & licenses.
If you do not have the compatible version you may upgrade on the Versions & licenses or find the correct version here for download.
https://marketplace.atlassian.com/apps/1213632/jira-service-management/version-history
Click on Upload an application, then provide the following URL for Jira Service Management version that is compatible.
Click on Upload. It can take a few minutes to upload and install the new version of this app.
After this process finishes, please go to Administration (⚙ icon) > Manage apps, then click on Manage apps again in the left menu.
Find the Cloud Migration Assistant app and try enabling it again.
If it still fails to enable, you may need to restart your instance (rolling restart will do on Data Center) so you get a clean startup.
If you have .jar for older versions of JSM on installed_plugins
You may either delete the directory entirely and restart Jira followed by manually installing all plugins you had before or you may follow the steps for the article below to remove the JSM related jars:
Was this helpful?