So a couple days ago I had several working Java applications using the Swing library, JFrame in particular. They all worked perfectly fine and now
Multiple Linux distros have separate packages for the base of the JRE vs the JRE GUI.
On RHEL7/CentOS 7 for example, if you only have this package installed:
You also need to install this package:
You can try to change a JRE you are currently using. Go to the "Run Configuration" of your project and change a JRE from your project's default to a Java Platform "standard" version.
HeadlessExceptionThrown when code that is dependent on a keyboard, display, or mouse is called in an environment that does not support a keyboard, display, or mouse.
To set up headless mode use
java -Djava.awt.headless=true
Using Headless Mode in the Java SE Platform