Question: What system do you recommend for implementing "automatic updates" for some java (desktop) application? I'd also want to have module/plugin installation and update. Think Eclipse and Firefox.

I'm aware of Eclipse RCP's OSGi stuff, and also NetBeans RCP has something here. Do one have to buy wholly into their respective RCP stuff to use their module and automatic update systems?

Are there other options?

Answer: 
Have you looked at the [Java Web Start](http://docs.oracle.com/javase/1.5.0/docs/guide/javaws/developersguide/faq.html)? It checks for updated module on the server and downloads it only if required otherwise things are cached locally on the client PC and starts from there.
Web Start is great if you have infrequent updates and good bandwidth.

If not, however, you need something else. I worked on a project where we had frequent updates and horrible bandwidth. We rolled our own classfile server; the startup code would talk to the server to see if updates were needed on a per-class basis. If so, the changed classes were downloaded and the application continued as normal.

It was actually not terribly complicated, so don't be afraid to roll your own if existing tools don't work.