unwin_
From the archive

Fix java.util.zip.ZipException: error in opening zip file

Historical archive · Not maintained
These notes describe older software and hardware. Commands, dependencies, and external links may no longer work or be appropriate for current systems.

Quick fix

If Solr or Jetty reports java.util.zip.ZipException: error in opening zip file after moving an archive from macOS to Linux or Unix, remove the hidden AppleDouble files whose names begin with ._, rebuild the archive without them, and deploy it again.

Original error

2009-08-03 11:55:51.796::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
2009-08-03 11:55:52.098::INFO:  jetty-6.1.3
2009-08-03 11:55:52.467::WARN:  Failed startup of context org.mortbay.jetty.webapp.WebAppContext@66e815{/solr,jar:file:/mnt/solr/webapps/solr.war!/}
java.util.zip.ZipException: error in opening zip file
	at java.util.zip.ZipFile.open(Native Method)
	at java.util.zip.ZipFile.<init>(ZipFile.java:114)
	at java.util.jar.JarFile.<init>(JarFile.java:133)
	at java.util.jar.JarFile.<init>(JarFile.java:97)
	at org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:171)
	at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1215)
	at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
	at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
	at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
	at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
	at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
	at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
	at org.mortbay.jetty.Server.doStart(Server.java:210)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
	at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929)
	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.mortbay.start.Main.invokeMain(Main.java:183)
	at org.mortbay.start.Main.start(Main.java:497)
	at org.mortbay.start.Main.main(Main.java:115)

Did you zip/tar up your solr directory on Mac OSX and upload it to a UNIX/Linux server? Then likely it's littered with ._blahblah files. Remove them and exclude them from the tarball/zipfile. That worked for me. This is where they come from.

I found this helpful:

The command-line utilities compress and tar generate AppleDouble format archives by default, but this can be turned off by set a shell environment variable "COPYFILE_DISABLE" to "true" before running the compress or tar utility.