Our Jira server recently suffered a hard reboot. I've been trying to get Jira restarted since then. It keeps failing due to missing dependencies (or so the log claims). Really basic dependencies like 'javax.activation' and 'javax.sql'. Here's a snippet from the startup log:
2013-03-05 17:39:00,364 main ERROR [plugin.osgi.factory.OsgiPlugin] Detected an error (BundleException) enabling the plugin 'com.atlassian.activeobjects.jira.spi' : Unresolved constraint in bundle com.atlassian.activeobjects.jira.spi [23]: Unable to resolve 23.0: missing requirement [23.0] package; (&(package=javax.sql)(version>=0.0.0.1_006_JavaSE)(version<=0.0.0.1_006_JavaSE)). This error usually occurs when your plugin imports a package from another bundle with a specific version constraint and either the bundle providing that package doesn't meet those version constraints, or there is no bundle available that provides the specified package. For more details on how to fix this, see http://confluence.atlassian.com/x/1xy6D
2013-03-05 17:39:00,365 main WARN [plugin.osgi.factory.OsgiPlugin] Unable to enable plugin 'com.atlassian.activeobjects.jira.spi'
com.atlassian.plugin.osgi.container.OsgiContainerException: Cannot start plugin: com.atlassian.activeobjects.jira.spi
at com.atlassian.plugin.osgi.factory.OsgiPlugin.enableInternal(OsgiPlugin.java:445)
at com.atlassian.plugin.impl.AbstractPlugin.enable(AbstractPlugin.java:237)
at com.atlassian.plugin.impl.AbstractDelegatingPlugin.enable(AbstractDelegatingPlugin.java:215)
at com.atlassian.plugin.manager.PluginEnabler.actualEnable(PluginEnabler.java:114)
at com.atlassian.plugin.manager.PluginEnabler.enable(PluginEnabler.java:99)
at com.atlassian.plugin.manager.DefaultPluginManager.addPlugins(DefaultPluginManager.java:727)
at com.atlassian.plugin.manager.DefaultPluginManager.init(DefaultPluginManager.java:180)
at com.atlassian.jira.plugin.JiraPluginManager.start(JiraPluginManager.java:58)
at com.atlassian.jira.ComponentManager$PluginSystem.start(ComponentManager.java:663)
at com.atlassian.jira.ComponentManager.startJIRA(ComponentManager.java:216)
at com.atlassian.jira.ComponentManager.quickStart(ComponentManager.java:209)
at com.atlassian.jira.ComponentManager.start(ComponentManager.java:194)
at com.atlassian.jira.upgrade.PluginSystemLauncher.start(PluginSystemLauncher.java:23)
at com.atlassian.jira.startup.DefaultJiraLauncher$3.run(DefaultJiraLauncher.java:101)
at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:284)
at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:169)
at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:94)
at com.atlassian.jira.startup.DefaultJiraLauncher.access$100(DefaultJiraLauncher.java:24)
at com.atlassian.jira.startup.DefaultJiraLauncher$1.run(DefaultJiraLauncher.java:61)
at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:33)
at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:56)
at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:67)
at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:62)
at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.get(MultiTenantComponentMapImpl.java:121)
at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStart(MultiTenantComponentMapImpl.java:165)
at com.atlassian.multitenant.impl.DefaultMultiTenantManager$1.consume(DefaultMultiTenantManager.java:134)
at com.atlassian.multitenant.impl.DefaultMultiTenantManager$1.consume(DefaultMultiTenantManager.java:131)
at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256)
at com.atlassian.multitenant.impl.DefaultMultiTenantManager.startTenant(DefaultMultiTenantManager.java:130)
at com.atlassian.multitenant.impl.DefaultMultiTenantManager.startAll(DefaultMultiTenantManager.java:203)
at com.atlassian.jira.startup.LauncherContextListener.contextInitialized(LauncherContextListener.java:95)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: org.osgi.framework.BundleException: Unresolved constraint in bundle com.atlassian.activeobjects.jira.spi [23]: Unable to resolve 23.0: missing requirement [23.0] package; (&(package=javax.sql)(version>=0.0.0.1_006_JavaSE)(version<=0.0.0.1_006_JavaSE))
at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
at org.apache.felix.framework.Felix.startBundle(Felix.java:1709)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:905)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:892)
at com.atlassian.plugin.osgi.factory.OsgiPlugin.enableInternal(OsgiPlugin.java:417)
... 45 more
There are *tons* more of those, but they're all basically the same.
I haven't been able to track down what the issue is, or what the fix might be, but I have determined that if I export the database onto a different host and then point a fresh Jira instance at it, everything works. Conversely, a fresh Jira install (blank Jira home, blank database) on the affected host does not seem to work, either.
I'm not sure what would cause this, or what would be the best approach to fixing it. I've tried restoring my database from a backup, and also manually purging all generated content from 'jira.home' (indexes/cache/temp/etc.). After backing everything up, of course.
How do I fix this problem and get Jira up and running again?