As for the fact that ResourceBundle.clearCache() does not work you have to do following steps.
At first after saving the changed properties file clear the cacheList:
Class type = ResourceBundle.class;
Field cacheList = type.getDeclaredField("cacheList");
cacheList.setAccessible(true);
((Map) cacheList.get(ResourceBundle.class)).clear();
After that you have to reload the properties file by using an own RessourceBundle.Control.
ResourceBundle rb = ResourceBundle.getBundle("file.properties", new ResourceBundle.Control() {
@Override
public ResourceBundle newBundle(String baseName, Locale locale, String format, ClassLoader loader, boolean reload) throws IllegalAccessException, InstantiationException, IOException {
}
This allows you to reload the change properties-file without getting the file out of the cache