The problem I had was the gem was trying to use its own gem directory for the Jetty tempDirectory, and of course it didn't have write permissions, so the server never started. It would appear to launch in the background, but it wasn't really running. When trying to run it in the foreground rake sunspot:solr:run
, it would show some of the error, but I still had to track it down to the config file in the gem. You have to edit the gem config to fix it. I added an issue to GitHub:
https://github.com/sunspot/sunspot/issues/561
The problem is sunspot_solr-2.1.0/bin/contexts/solr.xml file. You have to set the tempDirectory to something with write permissions, like /tmp, instead of '.', the gem directory.
If you are still having trouble with launching Solr try deleting the tmp directory and re-starting the server. I had a strange situation where it was pointing to the /tmp directory and was working, but when I restarted the server, it kept giving me 404 errors! Somehow all the files were deleted that it depends on! Since the directory still existed, it didn't re-copy the WAR and expand it. If you delete the tmp directory, then it will re-copy and re-expand the WAR.
ls /tmp/solr-webapp/
This is in addition to editing the /usr/local/rvm/gems/ruby-2.0.0-p247.../gems/sunspot_solr-2.1.0/solr/contexts/solr.xml file of course.