Java на Debian: возможная фатальная ошибка: шрифты не найдены - PullRequest
0 голосов
/ 14 декабря 2010

Я хочу запустить Tomcat на Debian 5 Minimal. Так что мне не нужен графический интерфейс для моей ОС, это просто чистый Tomcat-сервер.

Какие пакеты мне нужны, чтобы моя JVM использовала шрифты в своих приложениях? Я рисую тексты в Graphics2D и создаю PDF-файлы в своем Java-проекте.

Ответы [ 6 ]

3 голосов
/ 21 июля 2012

У меня была похожая проблема на CentOS после поиска решения ..
Я решил эту проблему, установив шрифты следующим образом:

  sudo yum install bitmap*
  sudo yum install dejavu-lgc*
  sudo yum install bitstream-vera*
2 голосов
/ 14 декабря 2010

Graphics2D и все, что находится в пакетах java.awt.* или java.swing.*, требует графического интерфейса для рисования.

Это проблема на большинстве безголовых серверов.У вас есть два варианта, и попробуйте их в следующем порядке:

  1. Используйте системное свойство "java.awt.headless" и установите для него значение "true" java -Djava.awt.headless=true или System.setProperty("java.awt.headless", "true");

  2. Установите виртуальный фрейм-буфер XWindows (xvfb) на свой сервер.Это сохраняет сервер без головы, но предоставляет примитивы XWindows, необходимые для рисования на виртуальном экране.Он далек от оптимизации (без графического ускорения), но позволит вашей системе снова работать.

Опция java.awt.headless была введена в Java 1.4.См .: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/

В случае, если это не работает, установите пакет XVFB и настройте его для создания виртуального кадрового буфера, достаточно большого для рисования.

1 голос
/ 14 января 2013

Я недавно столкнулся с этой проблемой в Atlassian Bamboo. В Scientific Linux все, что от меня требовалось, это:

sudo yum install dejavu *

(В отличие от mkvalsvik мне не нужно было создавать символическую ссылку).

1 голос
/ 21 декабря 2012

Ни один из ответов выше не работал для меня на Amazon Linux AMI с OpenJDK 1.6.0_20. Однако это сработало:

sudo yum install dejavu*
ln -s /usr/share/fonts/dejavu /usr/share/fonts/dejavu-lgc

Первая строка устанавливает некоторые шрифты по умолчанию, а вторая гарантирует, что Java найдет их. Больше на http://brandon.fuller.name/archives/2011/09/12/00.05.15/

0 голосов
/ 13 апреля 2015

Для меня это решило это: https://bugzilla.redhat.com/show_bug.cgi?id=708201 По сути, пакет 'java' не зависел от 'fontconfig', который нужно было устанавливать вручную.

0 голосов
/ 18 июля 2011

Я исправил это, установив некоторые шрифты (под Ubuntu):

apt-get install msttcorefonts

Они должны быть установлены в /usr/share/fonts/truetype/.

Не забудьте перезапустить Tomcat, если вы его используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...