如何解决Spring Boot启动报No ScriptEngine found for language js错误
无业务JS依赖的Spring应用启动抛出ScriptEngine相关报错
问题描述
- 确认该问题已有公开解决方案,但自行检索始终未找到匹配内容
- 项目为Maven构建的Spring应用,经排查未在业务代码的任何位置引入JavaScript相关逻辑
- 执行
mvn clean package可顺利完成全流程构建,执行java -jar app/target/app-X.X.X-SNAPSHOT.jar启动可执行Jar时,控制台抛出main ERROR No ScriptEngine found for language js错误 - 此前查阅过Java ScriptEngine支持语言的相关技术资料,但不清楚如何为应用补充JavaScript对应的ScriptEngine实现能力
- 希望明确两个核心问题:
- 未使用JavaScript的项目为何会触发此类ScriptEngine关联错误
- 该问题及同类ScriptEngine相关异常对应的已知解决方案、可参考技术文档有哪些
完整报错日志
2020-12-10 20:43:50,584 main ERROR No ScriptEngine found for language js. Available languages are: 2020-12-10 20:43:50,641 main ERROR Unable to create file /data/logs/out/out.log java.io.IOException: Could not create directory /data/logs/out at org.apache.logging.log4j.core.util.FileUtils.mkdir(FileUtils.java:127) at org.apache.logging.log4j.core.util.FileUtils.makeParentDirs(FileUtils.java:144) at org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory.createManager(RollingFileManager.java:650) at org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory.createManager(RollingFileManager.java:631) at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:113) at org.apache.logging.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:114) at org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getFileManager(RollingFileManager.java:205) at org.apache.logging.log4j.core.appender.RollingFileAppender$Builder.build(RollingFileAppender.java:146) at org.apache.logging.log4j.core.appender.RollingFileAppender$Builder.build(RollingFileAppender.java:62) at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122) at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002) at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942) at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934) at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552) at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241) at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288) at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:579) at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:651) at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:668) at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45) at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194) at org.apache.commons.logging.LogAdapter$Log4jLog.<clinit>(LogAdapter.java:155) at org.apache.commons.logging.LogAdapter$Log4jAdapter.createLog(LogAdapter.java:122) at org.apache.commons.logging.LogAdapter.createLog(LogAdapter.java:89) at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:67) at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:59) at org.springframework.boot.SpringApplication.<clinit>(SpringApplication.java:196) at xxx.xxx.xxx.xxx.xxx.Application.main(Application.java:48) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:564) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) at org.springframework.boot.loader.Launcher.launch(Launcher.java:51) at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:52)
内容的提问来源于stack exchange,提问作者Chloe Bennett
相关产品推荐
相关产品推荐

