docker中导出Excel提示没有字体文件 |
您所在的位置:网站首页 › openjdk:8-jdk-alpine › docker中导出Excel提示没有字体文件 |
遇到这个问题,我百度了好久,基本都没有正确答案,最后在本公司的技术总监的提醒下解决这个问题!困扰我几天真的很生气! 先贴一下错误截图! 错误1 错误2用的是easyExcel做的导出功能,发现报错,错误截图是第二个,然后我就一直在引入第三方字体尝试解决这个问题,然而并没卵用! 昨天下午技术总监给我说另外一个项目上的导出是正常的,用的都是easyExcel,我看了一下代码,都一样!!!(手动尴尬) 今天早上来了,我对比了一下镜像文件dockerFile文件,发现用的jdk版本不一样,我现在用的是:FROM openjdk:8-jdk-alpine 另外一个项目用的是:FROM anapsix/alpine-java:8_jdk_unlimited openjdk是体积小,内容精简,可以存在时区问题,字体问题等等,自己慢慢发现吧! anapsix/alpine-java:8_jdk_unlimited 体积比较大,内容很全,用这个做镜像就可以正常导出,不存在各种奇怪的问题! 浪费了几天时间,排查的方向都是给镜像引入字体,但是都没有解决,网上这种文章比较少,珍惜吧!!! jdk版本FROM anapsix/alpine-java:8_jdk_unlimited 用这个!!! 另外还有大佬提供其他的解决方案: 解决方案二感谢大佬补充! 第三种解决方案: FROM openjdk:8-jdk-alpine RUN echo"http://mirrors.aliyun.com/alpine/v3.6/main" > /etc/apk/repositories \ && echo"http://mirrors.aliyun.com/alpine/v3.6/community" >> /etc/apk/repositories \ && apk update upgrade \ && apk add--no-cache procps unzip curl bash tzdata \ && apk add ttf-dejavu \ && ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime \ && echo"Asia/Shanghai" > /etc/timezone EXPOSE 8095 COPY build/libs/exceldemo-1.0.jar/opt/exceldemo/ WORKDIR /opt/exceldemo/ ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","exceldemo-1.0.jar"] dockerFile 第三种解决方案亲测可以!!! |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |