Play 3.0+Scala 3环境下play-pac4j安全过滤器加载失败问题
Play 3.x 搭配 Scala 3 时 play-pac4j 安全过滤器加载异常
异常信息
使用新版Play 3.x框架并搭配Scala 3时,加载play-pac4j的SecurityFilter会触发NoSuchMethodError,报错堆栈如下:
java.lang.NoSuchMethodError: void play.api.mvc.EssentialFilter.$init$(play.api.mvc.EssentialFilter) org.pac4j.play.filters.SecurityFilter.<init>(SecurityFilter.scala:63) org.pac4j.play.filters.SecurityFilter$$FastClassByGuice$$11d1583.GUICE$TRAMPOLINE(<generated>) org.pac4j.play.filters.SecurityFilter$$FastClassByGuice$$11d1583.apply(<generated>)
复现场景
自有项目升级及play-pac4j-java-demo项目中均出现该问题,可通过以下配置复现:
项目依赖配置
- build.sbt 配置:
scalaVersion := "3.3.3" val playPac4jVersion = "12.0.0-PLAY3.0"
- plugins.sbt 配置:
addSbtPlugin("org.playframework" % "sbt-plugin" % "3.0.1")
内容的提问来源于stack exchange,提问作者user24715688
相关产品推荐
相关产品推荐

