Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 9444|Vastaus: 1

Docker POI -virhepoikkeusratkaisu

[Kopioi linkki]
Julkaistu 2021-11-9 09:19:08 | | | |
Kun POI:ta käytetään excelin tuonnin ja viennin toteuttamiseen, paikallinen avoin ympäristö on normaali, mutta kun se paketoidaan docker-kuvaksi aloitukseen, virhe on seuraava:



osoitteessa sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
        osoitteessa sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
        osoitteessa sun.awt.FontConfiguration.init(FontConfiguration.java:107)
        at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
        osoitteessa sun.font.SunFontManager$2.run(SunFontManager.java:431)
        osoitteessa java.security.AccessController.doPrivileged(Native Method)
        osoitteessa sun.font.SunFontManager. <init>(SunFontManager.java:376)
        osoitteessa sun.awt.FcFontManager. <init>(FcFontManager.java:35)
        osoitteessa sun.awt.X11FontManager. <init>(X11FontManager.java:57)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (natiivimenetelmä)
        osoitteessa sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        osoitteessa java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        osoitteessa java.lang.Class.newInstance(Class.java:442)
        osoitteessa sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
        osoitteessa java.security.AccessController.doPrivileged(Native Method)
        osoitteessa sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
        osoitteessa java.awt.Font.getFont2D(Font.java:491)
        osoitteessa java.awt.Font.canDisplayUpTo(Font.java:2060)
        osoitteessa java.awt.font.TextLayout.singleFont(TextLayout.java:470)
        osoitteessa java.awt.font.TextLayout. <init>(TextLayout.java:531)
        osoitteessa org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:285)
        osoitteessa org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:259)
        osoitteessa org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:244)
        osoitteessa org.apache.poi.xssf.usermodel.XSSFSheet.autoSizeColumn(XSSFSheet.java:523)
        osoitteessa org.apache.poi.xssf.usermodel.XSSFSheet.autoSizeColumn(XSSFSheet.java:505)

ratkaisu

Peruskuvan korvaamiseksi käytin aluksi openjdk:8-jdk-alpine, sitten vaihdoin muotoon:openjdk:8u312-oraclelinux8, ongelma ratkaistaan ja POI-pakettia voidaan käyttää normaalisti.

Dockerfile



(Loppu)




Edellinen:Tiedosto tai kansio ei ole olemassa, kun Docker-levy on liitetty
Seuraava:Java muuttaa sota-paketin konfiguraatiotiedostoa
Julkaistu 2021-11-11 08:49:48 |
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com