报错:
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment] with root cause
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:103)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82)
at sun.awt.X11FontManager.isHeadless(X11FontManager.java:509)
at sun.awt.X11FontManager.getFontPath(X11FontManager.java:786)
at sun.font.SunFontManager.getPlatformFontPath(SunFontManager.java:3282)
at sun.font.SunFontManager$10.run(SunFontManager.java:3308)
at java.security.AccessController.doPrivileged(Native Method)
at sun.font.SunFontManager.loadFonts(SunFontManager.java:3304)
at sun.awt.X11FontManager.loadFonts(X11FontManager.java:460)
at sun.font.SunFontManager.findFont2D(SunFontManager.java:2348)
at java.awt.Font.getFont2D(Font.java:500)
at java.awt.Font.canDisplayUpTo(Font.java:2060)
at java.awt.font.TextLayout.singleFont(TextLayout.java:470)
at java.awt.font.TextLayout.<init>(TextLayout.java:531)
at org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:274)
at org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:249)
at org.apache.poi.ss.util.SheetUtil.getColumnWidth(SheetUtil.java:234)
at org.apache.poi.hssf.usermodel.HSSFSheet.autoSizeColumn(HSSFSheet.java:2165)
at org.apache.poi.hssf.usermodel.HSSFSheet.autoSizeColumn(HSSFSheet.java:2147)
解决:
在 tomcat 的 bin 目录下的 catalina.sh 中 加入:
CATALINA_OPTS=-Djava.awt.headless=true