我需要在Java服务器(Java版本为“ 1.6.0_12”的Debian)上进行一些图像处理,
而且我从我的代码中收到java.awt.HeadlessException:
java.awt.HeadlessException
at sun.java2d.HeadlessGraphicsEnvironment.getDefaultScreenDevice(HeadlessGraphicsEnvironment.java:64)
at WaxOn.getDefaultConfiguration(WaxOn.java:341)
即使将java.awt.headless设置为true(通过此代码打印也很明显):
if (!java.awt.GraphicsEnvironment.isHeadless())
{
logger.warn("Headless mode is not enabled");
}
else
{
logger.info("Headless mode");
}
这是引发异常的代码:
public static GraphicsConfiguration getDefaultConfiguration()
{
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gd = ge.getDefaultScreenDevice();
return gd.getDefaultConfiguration();
}
任何想法如何解决这个问题?
解决方法:
无头时,您没有屏幕设备. documentation is clear:
Throws:
HeadlessException – if isHeadless() returns true