java.lang.NullPointerException à sun.awt.FontConfiguration.getVersion

OpenJDK excel dans docker ne peut pas exporter java.lang.NullPointerException à sun.awt.FontConfiguration.getVersion

1. Description du contexte :

La version jdk1.8 est utilisée localement et la fonction peut être utilisée normalement. Lors du déploiement dans l'environnement linux (openJDK1.8) via l'image du package docker, l'excel ne peut pas être exporté. Il indique si l'initialisation est vraie et le pointeur null est anormal. L'erreur est la suivante :
insérez la description de l'image ici

2. Raison :

Openjdk simplifie certaines fonctions par rapport à jdk1.8, il est donc plus petit lorsqu'il est fourni avec docker. L'échec de l'initialisation lors de l'exportation d'Excel est dû au fait que le composant fontconfig est simplifié.

3. Solution :

Il peut être résolu en téléchargeant le composant fontconfig lorsque docker empaquete l'image

La première étape : le système Linux Centos télécharge le composant fontconfig

yum install fontconfig

Étape 2 : Ajoutez la commande de téléchargement lors de l'empaquetage de l'image

RUN apk add --update font-adobe-100dpi ttf-dejavu fontconfig

La capture d'écran ci-dessous :
insérez la description de l'image ici
Lors de l'empaquetage de l'image, le journal suivant sera imprimé (le téléchargement peut être lent) :
insérez la description de l'image ici
4. Ensuite, redémarrez docker

docker restart 容器ID或容器名

5. Lors de l'emballage, il a été constaté que le téléchargement était très lent. La solution : passez au miroir Ali.

RUN echo -e 'https://mirrors.aliyun.com/alpine/v3.6/main/\nhttps://mirrors.aliyun.com/alpine/v3.6/community/' > /etc/apk/repositories \
 && apk update \
 && apk upgrade \
 && apk --no-cache add ttf-dejavu fontconfig

La configuration finale est la suivante :
insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/weixin_41377835/article/details/124723828
conseillé
Classement