这个jar包为什么在linux启动不起来啊??

@Ta 07-16 12:24发布,07-16 13:25修改 8083点击
Image_1721103788701.png(34.16 KB)报了这两个错。但是在windows启动没毛病,
在centos7.6就启动不了,东西我发出来了。jiangshan.jar(98.45 MB)自带的启动命令是
title 扶摇1区
java  -jar jiangshan.jar -Xmx10240M -Xms10240M -XX:+UseG1GC
pause;
回复列表(6|隐藏机器人聊天)
  • @Ta / 07-16 12:58 / /

    这个错误信息显示,您的Java程序在启动时出现了java.awt.HeadlessException异常。这个异常表明程序试图使用图形用户界面(GUI)功能,但当前环境不支持图形显示。具体原因是因为没有设置X11 DISPLAY变量,这意味着您的环境不支持图形显示或者没有正确配置图形显示环境。

    这里有几个可能的解决方案:

    1. 设置DISPLAY环境变量
      如果您的系统确实支持图形界面,可以尝试设置DISPLAY环境变量。例如:

      export DISPLAY=:0
      

      这个命令假定您在本地机器上运行程序,并且X服务器在DISPLAY 0上运行。

    2. 使用虚拟显示服务器
      如果您在一个没有图形界面的服务器上运行程序,可以使用虚拟显示服务器如Xvfb。安装并运行Xvfb,然后设置DISPLAY环境变量。例如:

      sudo yum install Xvfb
      Xvfb :1 -screen 0 1024x768x16 &
      export DISPLAY=:1
      
    3. 修改程序以支持Headless模式
      如果您的程序必须在没有图形显示的环境中运行,可以修改程序代码以支持Headless模式。通常情况下,可以在程序启动时添加以下代码:

      import java.awt.HeadlessException;
      import java.awt.GraphicsEnvironment;
      
      public class Main {
          public static void main(String[] args) {
              if (GraphicsEnvironment.isHeadless()) {
                  System.out.println("Running in headless mode");
                  // Initialize your application in headless mode
              } else {
                  // Initialize your application normally
              }
          }
      }
      
    4. 检查启动脚本中的错误
      错误信息中还提到pause: command not found,这表明启动脚本中有一个命令pause,但在Linux中没有这个命令。pause通常是Windows的命令,可以通过替换为Linux的相应命令或删除来解决。例如,您可以使用read命令来暂停脚本的执行:

      read -p "Press any key to continue..."
      

    请根据您的具体环境选择合适的解决方案进行尝试。
    一加ace2Pro(灰|24+1024)

  • @Ta / 07-16 13:20 / /
    第二个错误解决了,第二个错误解决不了啊
  • @Ta / 07-16 15:09 / /

    @13814814121,pause命令不存在,因为pause是windows的命令,改成read试试?

  • @Ta / 07-16 15:10 / /

    @13814814121,目前手头只有Termux,没跑起来这个jar

  • @Ta / 07-16 19:52 / /
    我直接用java -jar jiangshan.jar 也启动不了
  • @Ta / 07-17 09:11 / /

    是不是不能在纯命令行下操作?需要桌面环境

添加新回复
回复需要登录