浅谈java.awt使用过程中遇到的问题
2015-12-07 22:27
155 查看
1java.awt类 属于jdk中的,linux中为openJDK ,windows中为jdk 所以在linux上就会出现类找不到异常
解决办法:将linux上openJDK 卸载 然后安装jdk
规避的方式:将开发环境和生产环境一样,否则开发的时候在这个环境中是可以的,但是线上是另外一种环境,那么就是浪费很多不必要的时间去解决这些不必要的问题
2linxu环境下真是因为有了jdk环境,才得以使得java代码运行,使用java的内部类来处理图片、图表等一些图形化的数据时,就可能会调用linux中的图形化处理界面进行处理,
此时
2.1可以将linux的环境设置为headless环境,即没有显示的效果,只靠计算机的运算能力来处理这些特性
2.2安装Linux的图形化界面,设置默认的IP+端口号,java程序启动的时候会自动调用
linux本身-->X服务器<-[通过X协议交谈]->窗口管理器(综合桌面环境)-->X应用程序
ava在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。提示信息:"Can't connect to X11 window server"这是由于Linux的图形处理需要一个X Server服务器。(关于Linux的图形处理模式参考http://www.douzhe.com/docs/fbsd2/5.htm)
通常情况下,人们配置一个基于xNix的web服务器是不会安装X-Server,运行一个不必要的X-server并不是一种好的网络管理方式。对于一个Java服务器来说经常要处理一些图形元素,例如给图片加上水印文字,如果服务器没有安装X-Server,那就没法实现这个功能了。sun公司在JDK1.4的版本里面加入了一个headless服务器,有了这个你只需在jre启动的时候加入一句-Djava.awt.headless=true就可以得到与安装了X-Server一样的效果。下面说一下对于tomcat和weblogic俺是怎么实现这个小小的功能的:
直接修改${TOMCAT_HOME}/bin/catalina.sh文件
查到-Djava.io.tmpdir="$CATALINA_TMPDIR"这行,并在这一行下加入: -Djava.awt.headless=true 共七处。
找到weblogic.Server,在这个前面面加入-Djava.awt.headless=true即可,注意要用空格隔开。
解决办法:将linux上openJDK 卸载 然后安装jdk
规避的方式:将开发环境和生产环境一样,否则开发的时候在这个环境中是可以的,但是线上是另外一种环境,那么就是浪费很多不必要的时间去解决这些不必要的问题
2linxu环境下真是因为有了jdk环境,才得以使得java代码运行,使用java的内部类来处理图片、图表等一些图形化的数据时,就可能会调用linux中的图形化处理界面进行处理,
此时
2.1可以将linux的环境设置为headless环境,即没有显示的效果,只靠计算机的运算能力来处理这些特性
2.2安装Linux的图形化界面,设置默认的IP+端口号,java程序启动的时候会自动调用
linux本身-->X服务器<-[通过X协议交谈]->窗口管理器(综合桌面环境)-->X应用程序
ava在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。提示信息:"Can't connect to X11 window server"这是由于Linux的图形处理需要一个X Server服务器。(关于Linux的图形处理模式参考http://www.douzhe.com/docs/fbsd2/5.htm)
通常情况下,人们配置一个基于xNix的web服务器是不会安装X-Server,运行一个不必要的X-server并不是一种好的网络管理方式。对于一个Java服务器来说经常要处理一些图形元素,例如给图片加上水印文字,如果服务器没有安装X-Server,那就没法实现这个功能了。sun公司在JDK1.4的版本里面加入了一个headless服务器,有了这个你只需在jre启动的时候加入一句-Djava.awt.headless=true就可以得到与安装了X-Server一样的效果。下面说一下对于tomcat和weblogic俺是怎么实现这个小小的功能的:
解决办法:
1.如果服务器上安装有图形界面,可以通过设置环境变量:DISPALY=127.0.0.1:0.0解决
2.如果没有安装图形界面,可以在Java运行时加上参数:-Djava.awt.headless=true
tomcat
运行export CATALINA_OPTS="-Djava.awt.headless=true" 或者直接修改${TOMCAT_HOME}/bin/catalina.sh文件
查到-Djava.io.tmpdir="$CATALINA_TMPDIR"这行,并在这一行下加入: -Djava.awt.headless=true 共七处。
weblogic
修改weblogic启动文件(如startWebLogic.sh或startmydomain.sh),拖到最后一行,找到weblogic.Server,在这个前面面加入-Djava.awt.headless=true即可,注意要用空格隔开。
相关文章推荐
- struts2标签
- Java编程思想学习心得(三)基本类型
- SpringMVC与Struts2配置区别
- Groovy小结:java调用Groovy方法并传递参数
- Java设计模式之简单工厂模式
- Java虚拟机 程序计数器
- java web 过滤器跟拦截器的区别和使用
- java 获取MAC地址
- 03-SpringMVC-获得用户请求数据
- java泛型程序设计——约束与局限性
- java并发编程实战学习笔记之任务执行
- 面向切面的Spring
- java基础知识巩固
- java学习:利用JScrollpane增加文本域滚轮(滚动条)
- Java运行时数据区
- Java笔记---Swing 编程中添加组件没有立即显示的问题
- Java 动态代理机制分析及扩展
- java排序算法
- java 程序性能优化《第二章》设计优化 2.1善用设计模式 1 单例模式
- Spring的生命周期及注入详解