how could I request Java garbage collection externally, starting the program from JAR (Windows BAT used)?
System.gc(
For a purely command-line approach, you should be able to use jcmd. I believe jcmd has been part of the standard JDK install since at least Java 1.7. The command would be something like this:
jcmd GC.run
You can get a list of available diagnostic commands that jcmd provides for a particular process like this:
jcmd help