"IllegalStateException: zip file closed" when upgrading JIRA Fisheye Plugin in JIRA 4.3

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

症状

The following error message appears in the logs when upgrading a newer version of the JIRA Fisheye plugin in JIRA 4.3:

java.lang.IllegalStateException: zip file closed
        at java.util.zip.ZipFile.ensureOpen(ZipFile.java:403)
        at java.util.zip.ZipFile.getEntry(ZipFile.java:148)
        at java.util.jar.JarFile.getEntry(JarFile.java:206)
        at org.apache.felix.framework.util.JarFileX.getEntry(JarFileX.java:61)
        at org.apache.felix.framework.cache.JarContent.getEntryAsBytes(JarContent.java:120)
        at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.findClass(ModuleImpl.java:1738)
        at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:716)
        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:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        at com.atlassian.jirafisheyeplugin.FishEyePropertiesImpl.getText(FishEyePropertiesImpl.java:67)
        at com.atlassian.jirafisheyeplugin.FishEyePropertiesImpl.getText(FishEyePropertiesImpl.java:35)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.validateConfiguration(FishEyeConfigImpl.java:135)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.reloadPropertiesHelper(FishEyeConfigImpl.java:123)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.reloadProperties(FishEyeConfigImpl.java:113)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.refresh(FishEyeConfigImpl.java:216)
        at com.atlassian.jirafisheyeplugin.config.RefreshManager.refreshAll(RefreshManager.java:86)
        at com.atlassian.jirafisheyeplugin.config.RefreshManager.onStart(RefreshManager.java:105)
        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:597)
        at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$1.execute(AsynchronousAbleEventDispatcher.java:28)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher.dispatch(AsynchronousAbleEventDispatcher.java:56)
        at com.atlassian.event.internal.EventPublisherImpl.invokeListeners(EventPublisherImpl.java:151)
        at com.atlassian.event.internal.EventPublisherImpl.publish(EventPublisherImpl.java:70)
        at com.atlassian.multitenant.event.DefaultPeeringEventPublisherManager.publish(DefaultPeeringEventPublisherManager.java:17)
        at com.atlassian.multitenant.event.PeeringEventPublisher.publish(PeeringEventPublisher.java:23)
        at com.atlassian.plugin.event.impl.DefaultPluginEventManager.broadcast(DefaultPluginEventManager.java:84)
        at com.atlassian.jira.upgrade.PluginUpgradeLauncher.start(PluginUpgradeLauncher.java:39)
        at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:41)
        at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:57)
        at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:52)
        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:85)
        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:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2012-03-21 22:34:35,446 main ERROR      [atlassian.event.internal.EventPublisherImpl] There was an exception thrown trying to dispatch event 
'com.atlassian.jira.extension.JiraStartedEvent@5411cd7' from the invoker 'com.atlassian.event.internal.SingleParameterMethodListenerInvoker@58dec5c'.
java.lang.RuntimeException: com/opensymphony/module/propertyset/PropertySet
        at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:54)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$1.execute(AsynchronousAbleEventDispatcher.java:28)
        at com.atlassian.event.internal.AsynchronousAbleEventDispatcher.dispatch(AsynchronousAbleEventDispatcher.java:56)
        at com.atlassian.event.internal.EventPublisherImpl.invokeListeners(EventPublisherImpl.java:151)
        at com.atlassian.event.internal.EventPublisherImpl.publish(EventPublisherImpl.java:70)
        at com.atlassian.multitenant.event.DefaultPeeringEventPublisherManager.publish(DefaultPeeringEventPublisherManager.java:17)
        at com.atlassian.multitenant.event.PeeringEventPublisher.publish(PeeringEventPublisher.java:23)
        at com.atlassian.plugin.event.impl.DefaultPluginEventManager.broadcast(DefaultPluginEventManager.java:84)
        at com.atlassian.jira.upgrade.PluginUpgradeLauncher.start(PluginUpgradeLauncher.java:39)
        at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:41)
        at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:57)
        at com.atlassian.jira.startup.LauncherContextListener$1.create(LauncherContextListener.java:52)
        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:85)
        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:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.NoClassDefFoundError: com/opensymphony/module/propertyset/PropertySet
        at com.atlassian.jirafisheyeplugin.FishEyePropertiesImpl.getText(FishEyePropertiesImpl.java:67)
        at com.atlassian.jirafisheyeplugin.FishEyePropertiesImpl.getText(FishEyePropertiesImpl.java:35)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.validateConfiguration(FishEyeConfigImpl.java:135)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.reloadPropertiesHelper(FishEyeConfigImpl.java:123)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.reloadProperties(FishEyeConfigImpl.java:113)
        at com.atlassian.jirafisheyeplugin.config.FishEyeConfigImpl.refresh(FishEyeConfigImpl.java:216)
        at com.atlassian.jirafisheyeplugin.config.RefreshManager.refreshAll(RefreshManager.java:86)
        at com.atlassian.jirafisheyeplugin.config.RefreshManager.onStart(RefreshManager.java:105)
        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:597)
        at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36)
        ... 35 more
Caused by: java.lang.ClassNotFoundException: com.opensymphony.module.propertyset.PropertySet
        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:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        ... 48 more

原因

This message is harmless. The JIRA Fisheye plugin that is bundled with JIRA fails to unregister itself when the new version that you are upgrading to is deployed. This causes a listener inside the old version of the plugin to fail with the message "zip file closed" because the plugin's OSGi context has already been shut down. However, the new version of the plugin is unaffected by this and should continue working fine.

ソリューション

This message is harmless and should have no user-facing effects. However, if you want to fix it you can perform the following steps:

  1. Jira を停止します。
  2. Backup the file at atlassian-jira/WEB-INF/classes/atlassian-bundled-plugins.zip (in case you want to revert to the bundled version of the plugin later)
  3. Remove the JIRA Fisheye plugin from the bundled plugins zip by running the following command from the directory you extracted JIRA to:

    zip -d atlassian-jira/WEB-INF/classes/atlassian-bundled-plugins.zip jira-fisheye-plugin-3.1.5.jar
  4. Then you'll need to remove the JIRA Fisheye plugin from the bundled plugins directory in your JIRA home directory. You can do this by running the following command in your JIRA home directory:

    rm plugins/.bundled-plugins/jira-fisheye-plugin-3.1.5.jar
  5. Jira を起動します。
最終更新日 2018 年 7 月 31 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.