簡體   English   中英

從HeadlessGraphicsEnvironment.getDefaultScreenDevice拋出的java.awt.HeadlessException

[英]java.awt.HeadlessException thrown from HeadlessGraphicsEnvironment.getDefaultScreenDevice

我需要在java服務器上進行一些圖像處理(Debian with java version“1.6.0_12”),我從我的代碼接收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();
}

不知道怎么解決這個問題?

無頭時,你沒有屏幕設備。 文檔很清楚

拋出:HeadlessException - 如果isHeadless()返回true

您的代碼似乎是在沒有可用圖形設備的計算機上獲取默認圖形設備配置。 這沒有多大意義,永遠不會起作用。

如果您能解釋為什么要嘗試這樣做(在無頭機器上),我們可以提供替代方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM