就像问号一样。我用喷雾servlet构建了.war。我试图在jetty和jboss-7上部署它,但两者都给出了相同的错误:
java.lang.NoClassDefFoundError: scala/collection/GenTraversableOnce$class
at spray.http.Uri$Query.<init>(Uri.scala:496)
at spray.http.Uri$Query$Empty$.<init>(Uri.scala:575)
at spray.http.Uri$Query$Empty$.<clinit>(Uri.scala)
at spray.http.parser.UriParser.<init>(UriParser.scala:37)
at spray.http.Uri$.apply(Uri.scala:231)
at spray.http.Uri$.apply(Uri.scala:203)
at spray.http.Uri$.<init>(Uri.scala:194)
at spray.http.Uri$.<clinit>(Uri.scala)
at spray.http.Uri$Path$.build$1(Uri.scala:427)
at spray.http.Uri$Path$.apply(Uri.scala:428)
at spray.servlet.ConnectorSettings$.fromSubConfig(ConnectorSettings.scala:52)
at spray.servlet.ConnectorSettings$.fromSubConfig(ConnectorSettings.scala:46)
at spray.util.SettingsCompanion.apply(SettingsCompanion.scala:50)
at spray.servlet.Initializer$$anonfun$contextInitialized$1.apply$mcV$sp(Initializer.scala:40)
at akka.util.Switch.transcend(LockUtil.scala:27)
at akka.util.Switch.switchOn(LockUtil.scala:48)
at spray.servlet.Initializer.contextInitialized(Initializer.scala:33)
....我签了.war,有WEB/lib/scala 2.11.0.jar,所以类应该是可访问的。错误的原因是什么?
发布于 2014-05-09 14:04:56
在不同的设置中,我遇到了相同的错误消息。我在一个独立的应用程序中使用喷雾客户端(没有JBoss)。
原因是,虽然我使用的是spra1.3.1,它应该运行在Scala2.11上,但实际上我从Maven回购(我在项目中使用Maven )获得的版本是针对Scala2.10构建的。如果您想亲自查看,请查看POM。
所以,我所做的就是
喷雾IO http://repo.spray.io
io.spray喷雾-client_2.11 1.3.1-20140423
对于SBT来说
"io.spray“%%”喷雾-客户“% "1.3.1-20140423”
Update:不确定这是之前的版本还是最近添加的版本,但是喷雾主页现在也建议使用该版本。
https://stackoverflow.com/questions/23460872
复制相似问题