Server::Starter is a daemon that allows hot-deployment of server programs. It was originally designed for Perl web applications but can now also be used to run Java web apps by having the Java Virtual Machine inherit the listening socket from the parent Server::Starter process. This new capability allows easy upgrading of the JVM version and shutdown of old processes when new ones are launched, though it does not currently work on Mac OS X.