Error starting Confluence with ClassNotFoundException after upgrading
プラットフォームについて: サーバーと Data Center のみ。この記事は、サーバーおよび Data Center プラットフォームのアトラシアン製品にのみ適用されます。
問題
Confluence fails to start with a ClassNotFoundException after upgrading Confluence and replacing customizations per our Upgrading Confluence guide.
The following appears in the atlassian-confluence.log
ERROR [localhost-startStop-1] [ContainerBase.[Standalone].[localhost].[/]] log Error configuring application listener of class com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener
java.lang.ClassNotFoundException: com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener
Note that the actual class specified in the error can be different. In this example the class is "
com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener"
原因
This is generally caused by classes referenced in the <Confluence Install Directory>/confluence/WEB-INF/web.xml file that are copied over from a previous installation of Confluence.
回避策
In order to workaround the issue, edit the <Confluence Install Directory>/confluence/WEB-INF/web.xml and comment out the offending class.
- Take a backup of you <Confluence Install Directory>/confluence/WEB-INF/web.xml.
- Open the file in a text editor and search for the offending class referenced in the error: in our example the class is "
com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener"
Comment out the class and save the file. In our example we comment out the following:
<!-- <listener> <listener-class>com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener</listener-class> </listener> -->
Start Confluence