Documentation for JIRA 4.4. Documentation for other versions of JIRA is available too.

After unpacking the WAR on Solaris, JIRA fails to start with a ClassNotFoundException once deployed. How is this fixed?

On Solaris, the default tar utility should be avoided as it cannot handle long filenames. GNU tar should be used instead in order to handle long filenames found within the JIRA distribution, it can usually be found at:

/usr/sfw/bin/

Stacktrace example:

2006-11-15 15:43:27,539 ERROR [ContainerBase.[Catalina].[localhost].[/]] Error configuring application listener of class com.atlassian.jira.upgrade.ConsistencyLauncher
java.lang.ClassNotFoundException: com.atlassian.jira.upgrade.ConsistencyLauncher
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3617)
            at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
            at org.apache.catalina.core.StandardService.start(StandardService.java:450)
            at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
2006-11-15 15:43:27,582 ERROR [ContainerBase.[Catalina].[localhost].[/]] Error configuring application listener of class com.atlassian.jira.upgrade.UpgradeLauncher
java.lang.ClassNotFoundException: com.atlassian.jira.upgrade.UpgradeLauncher
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3617)
            at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
            at org.apache.catalina.core.StandardService.start(StandardService.java:450)
            at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
2006-11-15 15:43:27,592 ERROR [ContainerBase.[Catalina].[localhost].[/]] Error configuring application listener of class com.atlassian.jira.scheduler.JiraSchedulerLauncher
java.lang.ClassNotFoundException: com.atlassian.jira.scheduler.JiraSchedulerLauncher
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3617)
            at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
            at org.apache.catalina.core.StandardService.start(StandardService.java:450)
            at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
2006-11-15 15:43:27,602 ERROR [ContainerBase.[Catalina].[localhost].[/]] Error configuring application listener of class com.atlassian.jira.soap.axis.JiraAxisHttpListener
java.lang.ClassNotFoundException: com.atlassian.jira.soap.axis.JiraAxisHttpListener
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
            at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
            at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3617)
            at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
            at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
            at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
            at org.apache.catalina.core.StandardService.start(StandardService.java:450)
            at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
            at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
2006-11-15 15:43:27,606 ERROR [ContainerBase.[Catalina].[localhost].[/]] Skipped installing application listeners due to previous error(s)