I am experiencing following exceptions while running jconsole over Linux. I believe i might have missed some settings. Please help me over this.
Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159) at java.awt.Window.<init>(Window.java:406) at java.awt.Frame.<init>(Frame.java:402) at javax.swing.JFrame.<init>(JFrame.java:207) at sun.tools.jconsole.JConsole.<init>(JConsole.java:96) at sun.tools.jconsole.JConsole$6.run(JConsole.java:746) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209) at java.awt.EventQueue.dispatchEvent(EventQueue.java:597) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160) at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
HeadlessException is caused by running an application which requires a GUI rendering feature (including functionality like printing or creating images on the fly) on a platform which does not have a graphical interface (like Xwindows). Since jconsole is a GUI program, I can't imagine why you'd be trying to run it on a headless platform. If you are trying to monitor a server application, you should set up your application for remote monitoring and run jconsole on a workstation. Using Jconsole to Monitor Applications
You don't have to monitor from Windows, you just have to monitor from a machine that's running a GUI. X for Linux would do just as well.
All "headless" operation is is operating without a display head - which is to say, a windowing system. Servers will usually operate more efficiently that way, since the GUI overhead is easily 100MB or more of RAM these days, but without the GUI, all you can do is work with text.
An IDE is no substitute for an Intelligent Developer.