Consider a RCP application having some views. If you change the local in .ini files and restart the application all of the views does not get changed to the expected language until user clicked on them.
Because eclipse workbench caches workbench state.
Eclipse caches titles and layout of all parts. All View Parts are not actually created till when it is shown(User clicking) to make eclipse starts faster. So basically there is no code execution not at all in workbench start except visible parts.
Since codes are not loaded yet, There is no way to access Message bundles.
IMO, changing locale is very few case, So you can ignore this specific case.
Insert below lines into product.ini
will prevent cache:
-clearPersistedState
true
However, Customer can't restore previously opend editors or some settings of views after re-starting product. Choice is yours.