Got an error like this? java.util.zip.ZipException: error in opening zip file

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.(ZipFile.java:114)
	at java.util.jar.JarFile.(JarFile.java:133)
	at java.util.jar.JarFile.(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.