对于一个Java服务器来说经常要处理一些图形元素,例如地图的创建或者图形和图表等。这些API基本上总是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。然而,运行一个不必要的X-server并不是一种好的网络治理方式。
这个解决方案依靠于你的Java版本。假如你运行在JDK1.4上,那么你将有机会运行headless服务器。
-Djava.awt.headless=true
对于JDK1.3及更低的版本,有个来自eTeks的PJA工具包(Pure Java AWT Toolkit,纯Java AWT工具集)可以使用。它是一个在配置上与Sun的1.4版非常相似的headlessJava服务器,这种配置方式包含一组-D属性标志。
你需要下载相关的jar,将它们放到你的CLASSPATH中,然后设置下面的标志:
Dawt.toolkit=com.eteks.awt.PJAToolkit
Djava.awt.graphicsenv=com.eteks.java2d.PJAGraphicsEnvironment
在IBM的JDK下,你能找到下列所需的属性,这里我们将PJA的jar要放到lib/pja下:
Djava.awt.fonts=$JAVA_HOME/jre/lib/fonts
Djava2d.font.usePlatformFont=false
Duser.home=lib/pja
你可以从eTeks网站上下载PJA工具包。
--------------------------------------------------------------------------------
译者注:在JDK1.4的新特性的AWT中提到 headless支持是指在图形环境下是否支持显示器、鼠标和键盘,具体内容可以参考Sun的网站的headless支持