我正在尝试使用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
答案 0 :(得分:4)
一些调查显示真正的tomcat lib目录位于/ usr / share,而不是/ var / lib。我将库添加到/ usr / share并将其符号链接到/ var / lib,现在一切正常!此外,在tomcat下运行所需的唯一scala库是scala-library.jar,即scala运行时。