0

昨日、SBT に埋め込まれた「jetty-run」タスクを使用しているときに、このエラーが発生し始めました。コードを以前のバージョンに戻しましたが、まだ発生しています。

アプリケーションをパッケージ化して実際の jetty インスタンスにデプロイしたところ、エラーが発生しなかったことに注意してください。プロジェクトにいくつかの依存関係を追加した後にこのエラーが発生し始めましたが (関連している場合と関連していない場合があります)、その後それらを削除しました。

~/.m2/repository、~/.ivy2/cache、および project/boot ディレクトリを消去するだけでなく、「clean」「clean-lib」および「clean-cache」も試しました。

他のアイデアはありますか?

爆発している行は次のとおりです。

templateEngine.layout(uri, Map("flash" -> flash))

スタック トレースの詳細は次のとおりです。

org.fusesource.scalate.TemplateException: ローダー制約違反: メソッド "scala.tools.nsc.Settings.(Lscala/Function1;)V" を解決するとき、現在のクラス ローダー (sbt/jetty/LazyJettyRun7$SbtWebAppLoader$1 のインスタンス)クラス org/fusesource/scalate/support/ScalaCompiler と、解決されたクラス scala/tools/nsc/Settings のクラス ローダー (java/net/URLClassLoader のインスタンス) には、型 scala/Function1 で使用される異なるクラス オブジェクトがあります。サイン
    org.fusesource.scalate.TemplateEngine.compileAndLoad(TemplateEngine.scala:775) で
    org.fusesource.scalate.TemplateEngine.compileAndLoadEntry(TemplateEngine.scala:637) で
    org.fusesource.scalate.TemplateEngine.liftedTree1$1(TemplateEngine.scala:368) で
    org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:362) で
    org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:420) で
    org.fusesource.scalate.TemplateEngine.layout(TemplateEngine.scala:521) で
    com.ford.testbuilder.web.AppDefaults$class.com$ford$testbuilder$web$AppDefaults$$render(SharedTraits.scala:79) で
    com.ford.testbuilder.web.AppDefaults$$anonfun$6.apply(SharedTraits.scala:52) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$2$$anonfun$6.apply(ScalatraKernel.scala:133)
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$2$$anonfun$6.apply(ScalatraKernel.scala:133)
    scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:61) で
    scala.collection.immutable.List.foreach(List.scala:45) で
    scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:44) で
    scala.collection.mutable.ListBuffer.foreach(ListBuffer.scala:42) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$2.apply$mcV$sp(ScalatraKernel.scala:133)
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$2.apply(ScalatraKernel.scala:121)
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1$$anonfun$apply$mcV$sp$2.apply(ScalatraKernel.scala:121)
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(ScalatraKernel.scala:121) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(ScalatraKernel.scala:121) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(ScalatraKernel.scala:121) で
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1.apply$mcV$sp(ScalatraKernel.scala:120) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1.apply(ScalatraKernel.scala:120) で
    org.scalatra.ScalatraKernel$$anonfun$handle$1.apply(ScalatraKernel.scala:120) で
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.ScalatraKernel$class.handle(ScalatraKernel.scala:119) で
    com.ford.testbuilder.web.LoginServlet.org$scalatra$CookieSupport$$super$handle(LoginServlet.scala:10) で
    org.scalatra.CookieSupport$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(CookieSupport.scala:102) で
    org.scalatra.CookieSupport$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(CookieSupport.scala:102) で
    org.scalatra.CookieSupport$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(CookieSupport.scala:102) で
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.CookieSupport$$anonfun$handle$1.apply$mcV$sp(CookieSupport.scala:101) で
    org.scalatra.CookieSupport$$anonfun$handle$1.apply(CookieSupport.scala:101) で
    org.scalatra.CookieSupport$$anonfun$handle$1.apply(CookieSupport.scala:101) で
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.CookieSupport$class.handle(CookieSupport.scala:100) で
    com.ford.testbuilder.web.LoginServlet.org$scalatra$FlashMapSupport$$super$handle(LoginServlet.scala:10) で
    org.scalatra.FlashMapSupport$$anonfun$handle$1.apply$mcV$sp(flashMap.scala:101) で
    org.scalatra.FlashMapSupport$$anonfun$handle$1.apply(flashMap.scala:100) で
    org.scalatra.FlashMapSupport$$anonfun$handle$1.apply(flashMap.scala:100) で
    scala.util.DynamicVariable.withValue(DynamicVariable.scala:71) で
    org.scalatra.FlashMapSupport$class.handle(flashMap.scala:100) で
4

1 に答える 1

1

他の誰かのマシン(正常に動作していた)で新しいチェックアウトを試み、クラスパスを比較した後、これを理解しました。クラスパスに scala-library-2.8.1.jar と scala-library.jar の両方があることがわかりました。

これは、プロジェクト ファイルの次の行が原因でした。

オーバーライド def filterScalaJars = false

これで一日の大部分を無駄にしました:(

于 2011-04-12T19:19:11.907 に答える