`

java.awt.headless=true相关资料

    博客分类:
  • JAVA
 
阅读更多

之前一篇文章讲述linux如何转发jconsole的图形结果,其中涉及到 java.awt.headless=true,这次有朋友遇到这个问题,问题也查了半天未帮助其解决,为了更加详细的了解这个参数,故找了一些资料。

 

1:官方JDK中对于headless的支持说明

 

http://docs.oracle.com/javase/1.4.2/docs/guide/awt/AWTChanges.html#headless

 

重点在于:

 

Many of the methods in Toolkit and GraphicsEnvironment, with the exception of fonts, imaging, and printing, are changed to throw HeadlessException if a display, keyboard, and mouse are not supported


Applet, Button, Checkbox, Choice, FileDialog, Label, List, Menu, MenuBar, MenuComponent, MenuItem, PopupMenu, Scrollbar, ScrollPane, TextArea, TextComponent, Frame, Window, Dialog, JApplet, JFrame, JWindow, JDialog, and TextField. Canvas and Panel do not need to throw this exception since these can be given empty peers and treated as lightweights.

 

 

2:官方提供的使用headless模型的例子

 

 

Using Headless Mode in the Java SE Platform

 

http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/

 

其中有以下例子 Canvas, Panel,  Image components

Methods related to Canvas, Panel, and Image components do not need to throw a HeadlessException because these components can be given empty peers and treated as lightweight components.

 

 

3:如何设置headless

 

Setting java.awt.headless=true programmatically

 

http://stackoverflow.com/questions/2552371/setting-java-awt-headless-true-programmatically

 

这里提供了3种方法

 

1:System.setProperty("java.awt.headless", "true");

2:-Djava.awt.headless=true

3:通过反射设置java.awt.GraphicsEnvironment中这个属性的值为true

 

 

4:headless模式下处理图片的一个实例

 

 

 java.awt.HeadlessException after setting java.awt.headless=true

 

http://www.theserverside.com/discussions/thread.tss?thread_id=52535

 

重点在于

 

 

对于headless支持不好的JFrame 使用FilteredImageSource 来处理。

 

FilteredImageSource myFilteredImageSource = new FilteredImageSource(image.getSource(), new CropImageFilter(x, y, crpHeight, crpWidth));

 

image = Toolkit.getDefaultToolkit().createImage(myFilteredImageSource); 

 

具体这个用法我不是很清楚,因为没接触过,不过如果有同学遇到,可以借鉴下。

分享到:
评论

相关推荐

    java.lang.OutOfMemoryError解决办法

    报错 java.lang.OutOfMemoryError: PermGen space 报错 java.lang.OutOfMemoryError...JAVA_OPTS="-server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true

    java技术文档,非常实用

    %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Dfile.encoding=GB2312 -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.awt.headless=true -Djava....

    karyon-gradle

    .../karyon-gradle$ KARYON_OPTS= " -Xmx2560m -Djava.awt.headless=true -Deureka.name=karyon -Deureka.region=us-west-2 -Deureka.port=80 -Deureka.us-west-2.availabilityZones=default -Dkaryon.serviceUrl....

    tomcat性能优化(性能总览)

    JAVA_OPTS=”-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC” -Xms –...

    Linux和Windows中tomcat修改内存大小的方法

    实例,以下给出1G内存环境下java jvm 的参数设置参考: 代码如下:JAVA_OPTS=”-server -Xms800m -Xmx800m -XX:PermSize=64M-XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true ”JAVA_OPTS=”-...

    maven-surefire:Apache Maven Surefire

    XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:SoftRefLRUPolicyMSPerMB=50 -Djava.awt.headless=true -Dhttps.protocols=TLSv1.2"在Windows上: set MAVEN_OPTS="-server -Xmx256m -XX:MetaspaceSize=128m -...

    sqreen-reader:sQReen Reader是一种读取屏幕上QR码的工具

    如果要以无头模式运行,请运行: ./mvnw clean verify -Djava.awt.headless=true跑步要启动sQreen Reader,请运行以下命令: ./mvnw spring-boot:run -pl sqreen-reader-ui扫描所有扫描都作为构建管道的一部分运行...

    jrebel6.4.3破解独立java程序可用版本

    -server -Xmx512m -XX:MaxPermSize=128m -Djava.awt.headless=true -Drebel.spring_plugin=true -noverify -javaagent:D:\apps\jrebel6.4.3\jrebel.jar -Xbootclasspath/p:D:/apps/jrebel6.4.3/rebelboot.jar -...

    java开发erp源码下载-openbravo:OpenbravoERP-不再维护。请使用官方Openbravo

    java开发erp源码下载Openbravo ERP ...CATALINA_OPTS="-Djava.awt.headless=true -Xms384M -Xmx512M -XX:MaxPermSize=256M" d. 将tools.jar文件(从JDK中的/usr/lib/jvm/java-1.6.0-openjdk/lib )复

    java源码嵌套for循环-pytm:用于威胁建模的Pythonic框架

    循环的java源码压缩 pytm:用于威胁建模的 Pythonic 框架 介绍 传统的威胁建模往往迟到,有时甚至根本没有。 此外,创建手动数据流和报告可能非常...-Djava.awt.headless=true -jar $PLANTUML_PATH -tpng -pipe > tm/se

    java实战开发1200例源码-gantt:PlantUML甘特图的Clojure包装器

    -Djava.awt.headless=true -jar gantt-0.1.0-SNAPSHOT-standalone.jar -f svg -i ./doc -o :input-folder generate 单击此处查看使用 . 单击此处查看由 EDN 生产的中间体。 下载 下载最新版本的gantt程序: 动机 ...

    kafka_2.9.2-0.8.2.1.tgz

    PERFORMANCE_OPTS="-server -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true" ...

    docker-jenkins-slave:使用swarm插件的Docker Jenkins从属映像

    码头工人詹金斯奴隶 使用swarm插件的Docker Jenkins从属映像,并在... Default : '-Djava.awt.headless=true' JENKINS_SSH_PUBKEY SSH Public key that is added to Jenkins user authorized_keys file JENKINS_PASSWD

Global site tag (gtag.js) - Google Analytics