【问题标题】:How do I get Scala to run as a servlet under Tomcat?如何让 Scala 在 Tomcat 下作为 servlet 运行?
【发布时间】:2009-09-26 19:19:36
【问题描述】:

我正在尝试使用 scala 构建一个基本的 servlet,但我似乎无法弄清楚如何让它在 tomcat 下运行。我认为我的 scala 类没问题,并且我将 scala-2.6.x-final-blah.tgz 中的所有库都包含到了我的 tomcat lib 目录中,但我仍然在下面遇到奇怪的通用错误。

谁能告诉我这是怎么回事?

javax.servlet.ServletException: Error allocating a servlet instance
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    java.lang.Thread.run(Thread.java:636)


root cause 
java.lang.NoClassDefFoundError: scala/ScalaObject

【问题讨论】:

  • 您在哪里找到将“scala-2.6.x-final-blah.tgz 中的所有库”包含到 tomcat lib 目录的指令?你的是我唯一注意到的地方,这正是我需要做的。 (对于非 Unix 用户,您可以从 scala-lang.org/downloads 获取其他平台的库)。

标签: scala servlets tomcat6


【解决方案1】:

一些调查发现真正的 tomcat lib 目录在 /usr/share,而不是 /var/lib。我将库添加到 /usr/share 并将其符号链接到 /var/lib,现在一切正常!此外,在 tomcat 下运行所需的唯一 scala 库是 scala-library.jar,即 scala 运行时。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-28
    • 2016-06-19
    • 2013-12-31
    • 2017-12-20
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多