With a "-splash:imagepath" command line parameter, or with "SplashScreen-Image: imagepath" manifest parameter.
But when an application is started, Java still shows this image (below the application layer, but it visible when you switching between the applications), until the application is finished. Strange behavior, but it is possible to close this kind of splash screen.
With these lines of code:
import java.awt.SplashScreen; ... SplashScreen splashScreen = SplashScreen.getSplashScreen(); if (splashScreen != null) { splashScreen.close(); }