I have one jar file in my application\'s class path. At run time, I add new classes to the jar file and sometimes also modify the fields/methods of the existing classes. Current
Normally to reload a class you need to unload the entire class loader. i.e. remove all references to all classes loaded for that class loader.
Another option is to use instrumentation to change the byte code of an existing class. This usually comes with limitations and changing fields is something you cannot do. i.e. the objects of that type would have to be translated somehow.
What I normally do is have services which are very quick to start/restart. This way to you easily restart a process which needs updated code ideally by pressing the Run
in my IDE. This minimises deployment time as well.