2013-03-17 4 views
1

lib 디렉토리에 관리되지 않는 jar 세트를 포함하면 POST 요청시이 오류가 발생합니다. 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

AFAIK 자체 fluentlenium 제기된다 셀레늄을 포함 2.0.4 commons-io:commons-io:2.0.1 플레이. 그리고 귀하의 lib 폴더에 다른 버전의 commons-io을 가져온 것으로 의심됩니다. 당신의 lib 디렉토리에서 중,

[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을 사용하지 않는 경우) 플레이에서 종속성을 제거 :

당신은 재생 콘솔에 dependencies를 사용하여이를 확인할 수 있습니다.

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

나는 평민-IO의 이전 버전이 들어있는 항아리 PDF-transcoder.jar을 사용하고 있습니다 :

Build.scala하여 편집, fluentlenium에서 이적 종속성을 제거합니다. 하지만이 의존성은 내 앱에 필수적이다. 나는 그것을 제거 할 수 없다. 두 가지 버전의 commons-io를 가지고 있지만 새로운 것을 사용하고 싶다면 어떻게해야합니까? – by0

+0

최신 편집을보세요. –