yona-projects / yona

Project Hosting SW
https://yona.io
Apache License 2.0
485 stars 154 forks source link

oracle java9 버전에서 정적 파일 못불러오는 현상 #194

Open Binple opened 7 years ago

Binple commented 7 years ago

OS: Ubuntu 16.04 JRE: Oracle Java9 build 9-ea+158 YONA: 1.4.1

위와 환경에서 YONA를 실행하면 정적 파일들을 못불러 오더군요.

뭔가 경로가 잘 못되있는듯 합니다.

아래는 해당 에러 메시지 입니다.

play.api.Application$$anon$1: Execution exception[[RuntimeException: java.lang.IllegalAccessError: class play.utils.Resources$ (in unnamed module @0xe86183) cannot access class sun.net.www.protocol.file.FileURLConnection (in module java.base) because module java.base does not export sun.net.www.protocol.file to unnamed module @0xe86183]] at play.api.Application$class.handleError(Application.scala:296) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.api.DefaultApplication.handleError(Application.scala:402) [com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$14$$anonfun$apply$1.applyOrElse(PlayDefaultUpstreamHandler.scala:205) [com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$14$$anonfun$apply$1.applyOrElse(PlayDefaultUpstreamHandler.scala:202) [com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:33) [org.scala-lang.scala-library-2.10.4.jar:na] Caused by: java.lang.RuntimeException: java.lang.IllegalAccessError: class play.utils.Resources$ (in unnamed module @0xe86183) cannot access class sun.net.www.protocol.file.FileURLConnection (in module java.base) because module java.base does not export sun.net.www.protocol.file to unnamed module @0xe86183 at play.api.mvc.ActionBuilder$$anon$1.apply(Action.scala:523) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.utils.Threads$.withContextClassLoader(Threads.scala:21) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4.apply(Action.scala:129) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] Caused by: java.lang.IllegalAccessError: class play.utils.Resources$ (in unnamed module @0xe86183) cannot access class sun.net.www.protocol.file.FileURLConnection (in module java.base) because module java.base does not export sun.net.www.protocol.file to unnamed module @0xe86183 at play.utils.Resources$.isUrlConnectionADirectory(Resources.scala:30) ~[com.typesafe.play.play_2.10-2.3.10.jar:2.3.10] at controllers.AssetsBuilder$$anonfun$at$1$$anonfun$19.apply(Assets.scala:413) ~[com.typesafe.play.play_2.10-2.3.10.jar:1.4.1] at controllers.AssetsBuilder$$anonfun$at$1$$anonfun$19.apply(Assets.scala:409) ~[com.typesafe.play.play_2.10-2.3.10.jar:1.4.1] at scala.util.Success$$anonfun$map$1.apply(Try.scala:206) ~[org.scala-lang.scala-library-2.10.4.jar:na] at scala.util.Try$.apply(Try.scala:161) [org.scala-lang.scala-library-2.10.4.jar:na]

jre8 버전에서는 이상없이 잘 됩니다~

sjstyle commented 7 years ago

아직 java 9가 정식으로 릴리즈 된 것이 아니여서 사용시에 문제가 될 수 있습니다.

Yona에서 기반하고 있는 play framework 에 연관된 문제로 보입니다. https://groups.google.com/forum/#!topic/play-framework/EQhFA_EMGWM

Binple commented 7 years ago

@sjstyle 네 혹시나 해서 기록 남겨둡니다. 정식릴리즈 하면 한번 더 테스트하고 이상없으면 클로즈 시키겠습니다.

doortts commented 7 years ago

어느새 'Java 9 is coming!' 인 시절이 오고 있는거군요!

sjstyle commented 7 years ago

갑자기 생각나서 한번 검색해봤는데요. java9의 일시적인 버그가 아닌 play framework가 아마 수정되야할 것 같습니다. project jigsaw 때문인 것 같네요.

http://blog.codefx.org/java/dev/how-java-9-and-project-jigsaw-may-break-your-code/