验证码无法正常显示,提示Could not initialize class sun.awt.X11GraphicsEnvironment

在项目升级过程中,线上环境出现错误提示【Could not initialize class sun.awt.X11GraphicsEnvironment】,导致验证码无法正常显示。问题源于Java服务器在处理图片API时需要X-server支持,而系统未正确启动XServer。解决方案是在tomcat的启动脚本中添加参数`-Djava.awt.headless=true`。
摘要由CSDN通过智能技术生成

自己埋的坑好解决,就怕未知的意外发生,因为就算你哭爹喊雅嘛蝶也不知道该如何下手!!!

项目中临时新增了一个小功能,使用了洪荒之力完成后,按照升级文档进行升级的线上升级(本以为该顺风顺水的 意外的惊喜不经意间就与你相遇了)。

本想信心满满的上去看看,想看看自己做的功能多么的牛B, 随之出现的一堆刺眼提示信息 【提示Could not initialize class sun.awt.X11GraphicsEnvironment】,然后就懵逼了 。

或者
当然了,如果你还在使用Xshell 6工具查看系统日志的实时查看,还有可能会出现下图的提示信息:
在这里插入图片描述

原因导致:下面全部引用 曹英杰文章

经过Google发现很多人也出现同样的问题。从了解了X11GraphicEnvironment这个类的功能入手,
一个Java服务器来处理图片的API基本上是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。
所以,问题肯定出在启动server时,未能实现X-Server功能。root用户未启动XServer,mmcse中启动了XWindow。so问题来了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值