Upme is a simple library to add self-update capabilities to Java desktop applications. Its main goals are ease of use, extensibility and robustness. While the diagram above shows a common, but very simple use-case, the library also provides more low-level control.
- high-level wrapper for the average use-case of updating to the latest version
- archive-based full-replacement updates
- automatically elevate permissions permissions if needed
- restarting after update
- rollback on error
- clean up temporary files
- select desired new version out of a list of available updates
- configure which files to preserve during update
- create log file
- fetch updates from custom web server
- fetch updates from Github Releases