1

使用 Play 2.3.1、Java、Scala 2.10.0

我正在尝试将securesocial集成到我的网络项目中

/build.sbt

lazy val root = project.in( file(".") ).enablePlugins(PlayJava) scalaVersion := "2.11.1"

libraryDependencies ++= Seq( jdbc, cache, filters, anorm,
"com.typesafe.play.plugins" %% "play-plugins-util" % "2.3.0",
"com.typesafe.play.plugins" %% “play-plugins-mailer”%“2.3.0”、
“org.mindrot”%“jbcrypt”%“0.3m”、“ws.securesocial”%%“securesocial”%“ master-SNAPSHOT ”)

解析器 += Resolver.sonatypeRepo("snapshots")

conf/play.plugins

1500:com.typesafe.plugin.CommonsMailerPlugin 10001:securesocial.core.providers.FacebookProvider

conf/securesocial.conf

securesocial {
    onLoginGoTo=/
    onLogoutGoTo=/login
    ssl=false   
    assetsController=controllers.ReverseMyCustomAssetsController

    userpass {      
        withUserNameSupport=false
        sendWelcomeEmail=true
        enableGravatarSupport=true
        signupSkipLogin=true
        tokenDuration=60
        tokenDeleteInterval=5
        minimumPasswordLength=8
        enableTokenJob=true
        hasher=bcrypt
    }
    twitter {
        requestTokenUrl="https://twitter.com/oauth/request_token"
        accessTokenUrl="https://twitter.com/oauth/access_token"
        authorizationUrl="https://twitter.com/oauth/authenticate"
        consumerKey=your_consumer_key
        consumerSecret=your_consumer_secret
    }

    facebook {
        authorizationUrl="https://graph.facebook.com/oauth/authorize"
        accessTokenUrl="https://graph.facebook.com/oauth/access_token"
        clientId=your_client_id
        clientSecret=your_client_secret
        # this scope is the minimum SecureSocial requires.  You can add more if required by your app.
        scope=email
    }

    google {
        authorizationUrl="https://accounts.google.com/o/oauth2/auth"
        accessTokenUrl="https://accounts.google.com/o/oauth2/token"
        clientId=your_client_id
        clientSecret=your_client_secret
        scope="https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email"
    }
}

但低于错误

找不到合适的构造函数来实例化插件 [securesocial.core.providers.FacebookProvider]。所有 Play 插件都必须定义一个构造函数,该构造函数接受一个类型为 play.Application 的 Java 插件或 play.api.Application 的 Scala 插件的参数。

项目编译成功。

我错过了什么?任何指针都将对如何解决此问题有用

4

1 回答 1

1

作为 master 中最新重构的一部分,该模块不再使用插件。您使用插件指定的所有内容现在都必须在 RuntimeEnvironment 中定义。

查看示例应用程序以了解其使用方式。

于 2014-07-13T12:48:23.607 回答