2016-07-13 3 views
0

Я пытаюсь скомпилировать пример кода из этой книги (Play Framework Cookbook 2nd Edition) для JWT с нимбом-хосе-JWT.нимб-хосе-JWT Плагин Тип не найден

Однако сказал Plugin черта типа не найден во время компиляции. I проверил API документация, Plugin доступна на play.api пакете.

import play.api.{Logger, Play, Application, Plugin} 
class JWTPlugin @Inject() (app: Application) extends Plugin {...} 

Я попробовал DI версию и без routesGenerator := InjectedRoutesGenerator в build.sbt с той же ошибкой.

версия для nimbus-jose-jwt: 3.8.2. Пробовал с последними 4.22, с той же ошибкой.

Скала: 2.11.8

игры: 2.5.4

Цените любой указатель. Благодарю.

ответ

0

play.api.Plugin был удален в Play 2.5.x. Вы можете превратить плагин в модуль, как описано здесь: https://www.playframework.com/documentation/2.5.x/PluginsToModules

Но самое легкое решение состоит в том, чтобы превратить класс JWTPlugin в простой объект Scala (например, JWTUtil), удалить методы onStart и onStop, удалить «private val jwt "/ assigments из всех файлов в примере и вместо этого вызывают методы sign() и verify() в объекте JWTUtil.

Возможно, вам нужны еще некоторые незначительные изменения, которые я забыл, но в любом случае пример работает для меня, когда реализация JWT не наследуется от play.api.Plugin.