SpringBoot中启动出现错误:java.awt.HeadlessException!

最近在做毕设的时候遇到的,因为之前实在另一个独立项目中启动的摄像头,然后在移植到SpringBoot中报错java.awt.HeadlessException。
错误日志如下:

java.awt.HeadlessException
	at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204)
	at java.awt.Window.<init>(Window.java:536)
	at java.awt.Frame.<init>(Frame.java:420)
	at javax.swing.JFrame.<init>(JFrame.java:233)
	at org.bytedeco.javacv.CanvasFrame.<init>(CanvasFrame.java:124)
	at org.bytedeco.javacv.CanvasFrame.<init>(CanvasFrame.java:121)

错误分析

从错误日志中可以看到HeadlessException是项目开启了Headless模式,在这种模式下系统就会缺少其他设备的支持,比如:显示设备、键盘、鼠标等外设。在我的项目中就是摄像头设备支持。Headless模式在服务端是很常用的,因为大多数服务器就是运行在没有前述设备支持的情况下。

解决方案:

关闭Headless模式:在VM option中添加语句
-Djava.awt.headless=false\

SpringBoot中启动出现错误:java.awt.HeadlessException!_第1张图片SpringBoot中启动出现错误:java.awt.HeadlessException!_第2张图片
注意:若是要部署到不具有响应外设支持的服务器上,则需要使用计算能力模拟出能力,或者使用远程支持。

你可能感兴趣的:(java,spring,boot,tomcat)