Этот вопрос является общим, но также связан с веб-сервисами Amazon.
Я пытаюсь развернуть приложение Java на облачном сервере Amazon, но приложение не запускается, поскольку оно использует шрифты AWT (см. Следующие строки):
TextImage testImage = new TextImageImpl(128, 32, new Margin(0, 8));
// Declare or read the fonts you need
Font header = new Font("Sans-Serif", Font.BOLD, 24);
// 1. specify font and write text with a newline
testImage.useFont(header).writeLine(text).newLine();
Проблема, с которой я сталкиваюсь, заключается в том, что на виртуальных серверах Amazon не установлены правильные шрифты, и в результате вы не можете выполнять в своем приложении работу с изображениями / диаграммами. См. this для получения дополнительной информации.
Их служба поддержки клиентов предложила использовать собственный образ виртуальной машины (с установленными шрифтами или Oracle JDK, поскольку Oracle JDK поставляется с набором шрифтов), что для меня не является чистым решением.
Мой вопрос:
Как я могу переписать свой код или упаковать его другим способом, чтобы он работал на новой установке Open JDK без дополнительных шрифтов (если это вообще возможно).
Кстати, вот часть ошибки, которую я получаю:
9 октября 2011 г. 11:05:18 org.apache.catalina.core.StandardWrapperValve
вызовите SEVERE: Servlet.service () для приложения ZipGrocery с сервлетом
сгенерировано исключение java.lang.Error: Вероятная фатальная ошибка: шрифты не найдены.
at sun.font.FontManager.getDefaultPhysicalFont (FontManager.java:1088)
at sun.font.FontManager.initialiseDeferredFont (FontManager.java:967)
в
sun.font.CompositeFont.doDeferredInitialisation (CompositeFont.java:254)
в sun.font.CompositeFont.getSlotFont (CompositeFont.java:334) в
sun.font.CompositeStrike.getStrikeForSlot (CompositeStrike.java:77) в
sun.font.CompositeStrike.getFontMetrics (CompositeStrike.java:93) в
sun.font.FontDesignMetrics.initMatrixAndMetrics (FontDesignMetrics.java:358)
в sun.font.FontDesignMetrics. (FontDesignMetrics.java:349) в
sun.font.FontDesignMetrics.getMetrics (FontDesignMetrics.java:301) в
sun.java2d.SunGraphics2D.getFontMetrics (SunGraphics2D.java:787) в
nl.jamiecraane.imagegenerator.impl.TextImageImpl.getFontMetrics (TextImageImpl.java:219)
в
nl.jamiecraane.imagegenerator.impl.TextImageImpl.writeLine (TextImageImpl.java:212)
Спасибо