错误:
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11FontManager
java.lang.UnsatisfiedLinkError: /usr/local/jdk17/lib/libfontmanager.so: libfreetype.so.6
在生成验证码的时候本地测试没有问题,但是放到服务器报错,这类问题都是因为缺少字体导致的。
解决方法:
在Dockerfile中添加
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN set -xe && apk --no-cache add ttf-dejavu fontconfig
下载并安装字体
踩过的坑:
在docker中加字体
COPY Songti.ttc /usr/share/fonts/
没效果的原因是因为只添加字体文件并没有安装不会生效