Scalatra使用java 8

时间:2016-05-12 22:39:29

标签: scala scala-collections scalatra

我正在使用Scala版本2.9.0和Scalatra版本2.1.0-SNAPSHOT运行Web应用程序。我用Java 1.6构建应用程序。当我使用Java 1.7运行它时运行正常,但是当使用Java 1.8运行此错误时运行失败。可能是什么问题?

对我来说,运行java 1.8很重要,因为我的应用程序中使用了一些符合java 1.8的第三方jar。我有其他scala应用程序,我已经使用java 1.6构建并使用java 1.8运行良好,但我只是面临使用scalatra的应用程序的这个问题。

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.fusesource.scalate.TemplateException
    org.fusesource.scalate.TemplateEngine.compileAndLoad(TemplateEngine.scala:834)
    org.fusesource.scalate.TemplateEngine.compileAndLoadEntry(TemplateEngine.scala:691)
    org.fusesource.scalate.TemplateEngine.liftedTree1$1(TemplateEngine.scala:411)
    org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:405)
    org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:475)
    org.scalatra.scalate.ScalateSupport$class.renderScalateErrorPage(ScalateSupport.scala:140)
    org.scalatra.scalate.ScalateSupport$class.handle(ScalateSupport.scala:131)

root cause

java.lang.NullPointerException
    scala.tools.nsc.Global$Run.compileLate(Global.scala:1043)
    scala.tools.nsc.symtab.SymbolLoaders$SourcefileLoader.doComplete(SymbolLoaders.scala:303)
    scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:111)
    scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:85)
    scala.tools.nsc.symtab.Symbols$Symbol.info(Symbols.scala:732)

1 个答案:

答案 0 :(得分:0)

Scala 2.9的发行说明列出了它的依赖关系:"它需要Java运行时版本1.6或1.7。" Scala 2.11.1宣布支持Java 8,但称其为#34;实验。"实验形容词已从Scala 2.11.2的发行说明中删除,但我在使用更高版本的Scala(可能是2.11.7)的项目中遇到了Java 8的问题。