ripeto: il .jar è un archivio, un archivio è un eseguibile?

il .bat è uno script, di default mantiene lo standard error e lo standard output (ecco perché hai le system.out), ma puoi modificare queste opzioni (e guarda come funzionano questi script)

Inoltre, come noti, le info del manifest servono a java per poter capire cosa ha davanti