Graphics2D и все, что находится в пакетах java.awt.*
или java.swing.*
, требует графического интерфейса для рисования.
Это проблема на большинстве безголовых серверов.У вас есть два варианта, и попробуйте их в следующем порядке:
Используйте системное свойство "java.awt.headless" и установите для него значение "true" java -Djava.awt.headless=true
или System.setProperty("java.awt.headless", "true");
Установите виртуальный фрейм-буфер XWindows (xvfb) на свой сервер.Это сохраняет сервер без головы, но предоставляет примитивы XWindows, необходимые для рисования на виртуальном экране.Он далек от оптимизации (без графического ускорения), но позволит вашей системе снова работать.
Опция java.awt.headless
была введена в Java 1.4.См .: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/
В случае, если это не работает, установите пакет XVFB и настройте его для создания виртуального кадрового буфера, достаточно большого для рисования.