ProGuard needs seeds to determine which classes / methods need to be stored. Everything indicated in these seeds will also be saved.
The -assumenosideeffects option -assumenosideeffects used to remove actual calls to methods whose result is not used in any way, but does not necessarily mean that the method itself is being deleted.
In your particular case, you probably have a rule that supports all methods of public static void main(String[]) , since this will be the standard seed for a Java application.
You can analyze the reason for saving a particular method / class using the -whyareyoukeeping parameter.
source share