2013-03-17 40 views
1

當我在lib目錄中包含一組非託管JAR時,出現此錯誤。如果我刪除lib目錄,一切工作正常。如果它在那裏,我得到這個錯誤..任何想法?當我在lib目錄中包含自定義JAR時發生錯誤 - 播放框架2.0

play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NoSuchMethodError: org.apache.commons.io.IOUtils.closeQuietly(Ljava/io/Closeable;)V]] 
at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1.jar:2.0.4] 
at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1.jar:2.0.4] 
at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor.jar:2.0.2] 
at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1.jar:2.0.4] 
at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor.jar:2.0.2] 
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor.jar:2.0.2] 
Caused by: java.lang.NoSuchMethodError: org.apache.commons.io.IOUtils.closeQuietly(Ljava/io/Closeable;)V 
at org.apache.commons.io.FileUtils.doCopyFile(FileUtils.java:1150) ~[commons-io-2.4.jar:2.4] 
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1091) ~[commons-io-2.4.jar:2.4] 
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1038) ~[commons-io-2.4.jar:2.4] 
at controllers.IAcontroller.submit(IAcontroller.java:161) ~[classes/:na] 
at Routes$$anonfun$routes$1$$anonfun$apply$13$$anonfun$apply$14.apply(routes_routing.scala:132) ~[classes/:na] 
at Routes$$anonfun$routes$1$$anonfun$apply$13$$anonfun$apply$14.apply(routes_routing.scala:132) ~[classes/:na] 

回答

1

據我所知,播放2.0.4包含commons-io:commons-io:2.0.1通過自身由fluentlenium帶來的硒。我懷疑你已在lib文件夾中導入了不同版本的commons-io。所以

[my_project] $ dependencies 
... 
| commons-io:commons-io:2.0.1 | org.seleniumhq.selenium:selenium-firefox-driver:2.16.1 | As commons-io.jar | 
... 
[my_project] $ 

無論是從遊戲中移除的依賴(如果你不使用fluentlenium),無論是從您的lib目錄:

您可以通過播放控制檯上使用dependencies檢查。

fluentlenium刪除傳遞依賴,編輯Build.scala你:

val appDependencies = Seq(
    ... 
    ("org.fluentlenium" % "fluentlenium-festassert" % "0.5.6" % "test") .exclude("commons-io", "commons-io") 
    ) 
+0

我使用的jar PDF-transcoder.jar,其中包含的commons-IO的舊版本。但是這種依賴關係對我的應用程序是必需的。我無法刪除它。我如何解決有兩個版本的commons-io,但只想使用新版本 – by0 2013-03-17 20:29:28

+0

看看我最新的編輯。 – 2013-03-18 08:53:48