【问题标题】:How to solve exception [Error loading application.groovy due to [java.lang.ArrayIndexOutOfBoundsException]: 0] when deploying war?部署war时如何解决异常[Error loading application.groovy due to [java.lang.ArrayIndexOutOfBoundsException]: 0]?
【发布时间】:2018-08-27 14:11:45
【问题描述】:

如何解决战争部署到生产模式时发生的异常

在 Grails 3.1.8、Java 8 中的开发

在 Linux CentOS 7 和 Tomcat 8.5.9 服务器上部署。

请从 catalina.out 中查找错误日志

18-Mar-2018 20:29:21.953 SEVERE [localhost-startStop-1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:
     org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/application]]
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
            at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
            at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
            at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)        
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
            at java.lang.Thread.run(Thread.java:745)
    Caused by: org.grails.core.exceptions.GrailsConfigurationException: Error loading application.groovy due to [java.lang.ArrayIndexOutOfBoundsException]: 0
            at org.grails.core.cfg.GroovyConfigPropertySourceLoader.load(GroovyConfigPropertySourceLoader.groovy:72)
            at org.grails.core.cfg.GroovyConfigPropertySourceLoader.load(GroovyConfigPropertySourceLoader.groovy:45)
            at org.springframework.boot.env.PropertySourcesLoader.load(PropertySourcesLoader.java:127)
            at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadIntoGroup(ConfigFileApplicationListener.java:462)
            at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:449)    
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
            at grails.boot.GrailsApp.run(GrailsApp.groovy:55)
            at org.springframework.boot.context.web.SpringBootServletInitializer.run(SpringBootServletInitializer.java:149)
            at org.grails.boot.context.web.GrailsAppServletInitializer.createRootApplicationContext(GrailsAppServletInitializer.groovy:57)
            at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:85)
            at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:169)
            at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5292)
            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
            ... 10 more
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
            at sun.font.CompositeFont.getSlotFont(CompositeFont.java:333)
            at sun.font.CompositeGlyphMapper.initMapper(CompositeGlyphMapper.java:81)
            at sun.font.CompositeGlyphMapper.<init>(CompositeGlyphMapper.java:62)
            at sun.font.CompositeFont.getMapper(CompositeFont.java:391)
            at sun.font.CompositeFont.canDisplay(CompositeFont.java:417)
            at java.awt.Font.canDisplay(Font.java:1980)
            at com.octo.captcha.component.image.fontgenerator.RandomFontGenerator.checkFontCanDisplayCharacters(RandomFontGenerator.java:207)
            at com.octo.captcha.component.image.fontgenerator.RandomFontGenerator.cleanFontList(RandomFontGenerator.java:163)
            at com.octo.captcha.component.image.fontgenerator.RandomFontGenerator.initializeFonts(RandomFontGenerator.java:79)
            at com.octo.captcha.component.image.fontgenerator.RandomFontGenerator.<init>(RandomFontGenerator.java:69)        
            at org.grails.core.cfg.GroovyConfigPropertySourceLoader.load(GroovyConfigPropertySourceLoader.groovy:61)
            ... 34 more

【问题讨论】:

    标签: java linux tomcat grails centos7


    【解决方案1】:
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
      at sun.font.CompositeFont.getSlotFont(CompositeFont.java:333)
    

    这似乎缺少某些字体,或者没有安装任何字体。在您的开发环境和您的产品之间比较fc-command 的输出。默认情况下,此命令可能不在这里,您也需要安装它。 这个post 可能会有所帮助,因为我们不知道您正在运行哪个发行版。

    【讨论】:

    • @Adell linux 发行版是 centos 7。
    • 好的,我编辑了你的问题。我发布的答案可能是正确的。
    猜你喜欢
    • 2018-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-05
    相关资源
    最近更新 更多