JAVA_OPTS中headless和-D选项的含义是什么?

3

我正在使用以下环境变量进行Tomcat配置:

JAVA_OPTS="-server -Djava.awt.headless=true -Xms384M -Xmx512M -XX:MaxPermSize=256M"

在这里,我不理解-Dheadless的含义,虽然它们并非必须的,但我仍然很想知道:它们是什么意思?

2个回答

3

TDS参考: JAVA_OPTS概述 (链接失效。在这里这里有缓存版本.)

该链接为TDS的JAVA_OPTS概述,但是该链接已经失效。您可以在这里或者这里查看缓存版本。

An obscure bug concerning X servers and graphics rendering code can cause WMS requests to fail or, in certain situations, cause Tomcat to crash. You may see error messages like the following:

"java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment"

To avoid this situation, the graphics code needs to be told that there is no graphics console available. This can be done by setting the java.awt.headless system property to true which can be done using JAVA_OPTS:

JAVA_OPTS="-Xmx1024m -Xms256m -server -Djava.awt.headless=true"
export JAVA_OPT

您分享的链接已经失效了!您有其他链接吗? - Nicks

2
无头模式是一种系统配置,其中缺少显示设备、键盘或鼠标。听起来让人意外,但实际上您可以在此模式下执行不同的操作,甚至包括图形数据。它适用于什么场景呢?假设您的应用程序反复生成某个图像,例如必须在每次用户登录系统时更改的图形验证码。当创建一个图像时,您的应用程序既不需要显示器也不需要键盘。现在假设您有一台没有显示设备、键盘或鼠标的主机或专用服务器,那么理想的决策是利用这个环境的强大计算能力进行可视化和非可视化功能。然后,使用无头模式系统生成的图像可以传递给有头系统进行进一步渲染。想了解更多,请参考:http://www.oracle.com/technetwork/articles/javase/headless-136834.html

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接