当前位置: 首页 > 知识库问答 >
问题:

Play framework-securesocial-找不到适当的构造函数来实例化插件

万俟浩
2023-03-14

使用Play 2.3.1、Java、Scala 2.10.0

libraryDependencies++=Seq(jdbc、缓存、筛选器、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“)

resolvers+=resolver.sonatyperepo(“快照”)

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插件都必须定义一个接受一个参数的构造函数,该参数可以是Java插件的Play.Application类型参数,也可以是Scala插件的Play.api.Application类型参数。

项目编译成功。

我错过了什么?关于如何解决此问题,任何指针都很有用

共有1个答案

陈德泽
2023-03-14

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

查看示例应用程序,看看它是如何使用的。

 类似资料:
  • 问题内容: 我正在实现他们文档中提供的firebase示例。我遇到此错误: com.fasterxml.jackson.databind.JsonMappingException:没有为类型[简单类型,类com.XYZ。$ BlogPost]找到合适的构造函数:无法从JSON对象实例化(需要添加/启用类型信息吗?) 这是我的代码: 我在同一件事上经历了很多问题,说要包含反序列化JSON所需的空构造

  • 我有一个很大的实体类,有很多很多的字段,还有一个投影类,它应该是这个大实体的一部分。 除了@OneTomany字段之外,所有的东西都运行得很好。@OneTomany字段应该是一个地址列表,但当将其转换为投影类时,我总是得到错误“无法定位适当的构造函数[...]预期参数为:long,[...],***.Entity.Address”。 转换器正在搜索单个address对象,而不是address对象列

  • 问题内容: 我是Java的新手,正在尝试为Minecraft制作一个mod,但我不知道如何解决此错误: 这是我的代码: 这是怎么回事,我正在尝试使字符串“ Username”重定向到另一个类。 问题答案: Java编译器告诉您不能构造对象,因为您对构造函数的调用与任何已知的构造函数都不匹配。 具体来说,编译器发现了两个构造函数: 但您致电给: 都不匹配。

  • 当我尝试只使用Id作为值并删除列表时,它工作了。

  • 我试图调用一个片段,但有时会收到以下错误,即使我的片段中有空构造函数 作为

  • 我在一些设备上遇到了这个问题,并且在我的崩溃分析中出现了一个错误。当应用程序遇到ANR故障并且错误为 无法启动activity ComponentInfo{com.qwykr.dryver.base/com.qwykr.dryver.base.activities.MainActivity}:Android.support.v4.app.fragment$InstantiationExceptio