Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在游戏框架2.3.8上安装SecureSocial?_Java_Scala_Playframework 2.0_Playframework 2.3_Securesocial - Fatal编程技术网

Java 如何在游戏框架2.3.8上安装SecureSocial?

Java 如何在游戏框架2.3.8上安装SecureSocial?,java,scala,playframework-2.0,playframework-2.3,securesocial,Java,Scala,Playframework 2.0,Playframework 2.3,Securesocial,我一直在学习如何使用Play框架。据我所知,插件可以用来添加其他人开发的功能。也许我应该叫它模块?我了解到SercureSocial是可用于身份验证的最佳模块之一。但这些文档并没有真正让我有所收获。有人能帮我理解如何将主快照添加到我现有的java项目中吗 让我们假设我表现出色 activator new my first app play scala 激活器蚀 我在eclipse项目中导入了 下一步是尝试按照以下url的指示操作 读了那本书后,我还是迷路了 没有Build.scala文件,但我看

我一直在学习如何使用Play框架。据我所知,插件可以用来添加其他人开发的功能。也许我应该叫它模块?我了解到SercureSocial是可用于身份验证的最佳模块之一。但这些文档并没有真正让我有所收获。有人能帮我理解如何将主快照添加到我现有的java项目中吗

让我们假设我表现出色 activator new my first app play scala 激活器蚀 我在eclipse项目中导入了

下一步是尝试按照以下url的指示操作

读了那本书后,我还是迷路了

没有Build.scala文件,但我看到有一个Build.sbt文件。是否将此块添加到build.sbt文件

object ApplicationBuild extends Build {
val appName         = "my-first-app"
val appVersion      = "1.0-SNAPSHOT"

val appDependencies = Seq(
    "ws.securesocial" %% "securesocial" % "master-SNAPSHOT"
)
val main = play.Project(appName, appVersion, appDependencies).settings(
    resolvers += Resolver.sonatypeRepo("releases")
)

val main = play.Project(appName, appVersion, appDependencies).settings(
  resolvers += Resolver.sonatypeRepo("snapshots")
)
复制上面的块之后,我在conf文件夹中创建了ply.plugins文件。然后我将所有插件复制到该文件并保存

1500:com.typesafe.plugin.CommonsMailerPlugin
9994:securesocial.core.DefaultAuthenticatorStore
9995:securesocial.core.DefaultIdGenerator
9996:securesocial.core.providers.utils.DefaultPasswordValidator
9997:securesocial.controllers.DefaultTemplatesPlugin
9998:your.user.Service.Implementation <-- Important: You need to change this
9999:securesocial.core.providers.utils.BCryptPasswordHasher
10000:securesocial.core.providers.TwitterProvider
10001:securesocial.core.providers.FacebookProvider
10002:securesocial.core.providers.GoogleProvider
10003:securesocial.core.providers.LinkedInProvider
10004:securesocial.core.providers.UsernamePasswordProvider
10005:securesocial.core.providers.GitHubProvider
10006:securesocial.core.providers.FoursquareProvider
10007:securesocial.core.providers.XingProvider
10008:securesocial.core.providers.VkProvider
10009:securesocial.core.providers.InstagramProvider
然后,我尝试运行该项目,结果出现以下错误

[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: ws.securesocial#securesocial;2.1.4: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn]  Note: Some unresolved dependencies have extra attributes.  Check that these dependencies exist with the requested attributes.
[warn]          ws.securesocial:securesocial:2.1.4 (scalaVersion=2.10, sbtVersion=0.13)
[warn]
sbt.ResolveException: unresolved dependency: ws.securesocial#securesocial;2.1.4:not found
    at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:217)
    at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:126)
    at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:125)
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:115)
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:115)
    at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:103)
    at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:48)
    at sbt.IvySbt$$anon$3.call(Ivy.scala:57)
    at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
    at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78)
    at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97)
    at xsbt.boot.Using$.withResource(Using.scala:10)
    at xsbt.boot.Using$.apply(Using.scala:9)
    at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
    at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
    at xsbt.boot.Locks$.apply0(Locks.scala:31)
    at xsbt.boot.Locks$.apply(Locks.scala:28)
    at sbt.IvySbt.withDefaultLogger(Ivy.scala:57)
    at sbt.IvySbt.withIvy(Ivy.scala:98)
    at sbt.IvySbt.withIvy(Ivy.scala:94)
    at sbt.IvySbt$Module.withModule(Ivy.scala:115)
    at sbt.IvyActions$.update(IvyActions.scala:125)
    at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1223)
    at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1221)
    at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$74.apply(Defaults.scala:1244)
    at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$74.apply(Defaults.scala:1242)
    at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:35)
    at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1246)
    at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1241)
    at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:45)
    at sbt.Classpaths$.cachedUpdate(Defaults.scala:1249)
    at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1214)
    at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1192)
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
    at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:42)
    at sbt.std.Transform$$anon$4.work(System.scala:64)
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
    at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
    at sbt.Execute.work(Execute.scala:244)
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
    at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
    at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
[error] (*:update) sbt.ResolveException: unresolved dependency: ws.securesocial#securesocial;2.1.4: not found
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore?
嗯。。。libraryDependencies是一个设置键[Seq[ModuleId]]

现在,SettingKey[Seq[ModuleId]]可以看作类似于Seq或List的东西,它提供了类似的功能

所以。。。您可以将新的依赖项添加到它,就像您将添加到任何其他Seq或List一样

嗯。。。libraryDependencies是一个设置键[Seq[ModuleId]]

现在,SettingKey[Seq[ModuleId]]可以看作类似于Seq或List的东西,它提供了类似的功能

所以。。。您可以将新的依赖项添加到它,就像您将添加到任何其他Seq或List一样


这几天我自己也经历过。此时,我建议您忽略文档。这不是最新的文档,是为2,但3似乎是需要发挥2.3.x。像play.plugins这样的东西会让你走上错误的道路

拼凑一个将M3放在2.3.X上的安装是很粗糙的,但我认为我已经用Java实现了。这些资源对我很有帮助。从示例中提取.sbt设置之类的内容

首先,阅读下面的文章。第二,让它运行。这
这很有帮助。第三,将代码从示例迁移到本地树中。一旦你开始这样做,你可能会发现没有样式。有关如何显示css/js的信息,请参阅。

我自己在过去几天里也经历了这个问题。此时,我建议您忽略文档。这不是最新的文档,是为2,但3似乎是需要发挥2.3.x。像play.plugins这样的东西会让你走上错误的道路

拼凑一个将M3放在2.3.X上的安装是很粗糙的,但我认为我已经用Java实现了。这些资源对我很有帮助。从示例中提取.sbt设置之类的内容

首先,阅读下面的文章。第二,让它运行。这 这很有帮助。第三,将代码从示例迁移到本地树中。一旦你开始这样做,你可能会发现没有样式。有关如何显示css/js的信息,请参阅

有人能帮助我了解如何将主快照添加到 现有java项目

我只尝试了Scala版本,没有尝试Java,但我希望下面的内容能有所帮助

在build.sbt文件中,向libraryDependencies添加以下行:

"ws.securesocial" %% "securesocial" % "master-SNAPSHOT"
没有Build.scala文件,但我看到有一个Build.sbt文件。做 是否将此块添加到build.sbt文件

object ApplicationBuild extends Build {
val appName         = "my-first-app"
val appVersion      = "1.0-SNAPSHOT"

val appDependencies = Seq(
    "ws.securesocial" %% "securesocial" % "master-SNAPSHOT"
)
val main = play.Project(appName, appVersion, appDependencies).settings(
    resolvers += Resolver.sonatypeRepo("releases")
)

val main = play.Project(appName, appVersion, appDependencies).settings(
  resolvers += Resolver.sonatypeRepo("snapshots")
)
您需要添加到build.sbt的唯一其他内容是Sonatype OSS快照存储库URL:

resolvers += 
  "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"
复制上面的块之后,我在 conf文件夹。然后我将所有插件复制到该文件并保存

1500:com.typesafe.plugin.CommonsMailerPlugin
9994:securesocial.core.DefaultAuthenticatorStore
9995:securesocial.core.DefaultIdGenerator
9996:securesocial.core.providers.utils.DefaultPasswordValidator
9997:securesocial.controllers.DefaultTemplatesPlugin
9998:your.user.Service.Implementation <-- Important: You need to change this
9999:securesocial.core.providers.utils.BCryptPasswordHasher
10000:securesocial.core.providers.TwitterProvider
10001:securesocial.core.providers.FacebookProvider
10002:securesocial.core.providers.GoogleProvider
10003:securesocial.core.providers.LinkedInProvider
10004:securesocial.core.providers.UsernamePasswordProvider
10005:securesocial.core.providers.GitHubProvider
10006:securesocial.core.providers.FoursquareProvider
10007:securesocial.core.providers.XingProvider
10008:securesocial.core.providers.VkProvider
10009:securesocial.core.providers.InstagramProvider
您需要在play.plugins文件中配置的唯一插件是CommonMailerPlugin:

1500:com.typesafe.plugin.CommonsMailerPlugin
接下来,我将所有路由复制到路由文件中

# Login page
GET     /login                      securesocial.controllers.LoginPage.login
GET     /logout                     securesocial.controllers.LoginPage.logout

# User Registration and password handling 
GET     /signup                     securesocial.controllers.Registration.startSignUp
POST    /signup                     securesocial.controllers.Registration.handleStartSignUp
GET     /signup/:token              securesocial.controllers.Registration.signUp(token)
POST    /signup/:token              securesocial.controllers.Registration.handleSignUp(token)
GET     /reset                      securesocial.controllers.Registration.startResetPassword
POST    /reset                      securesocial.controllers.Registration.handleStartResetPassword
GET     /reset/:token               securesocial.controllers.Registration.resetPassword(token)
POST    /reset/:token               securesocial.controllers.Registration.handleResetPassword(token)
GET     /password                   securesocial.controllers.PasswordChange.page
POST    /password                   securesocial.controllers.PasswordChange.handlePasswordChange

# Providers entry points
GET     /authenticate/:provider     securesocial.controllers.ProviderController.authenticate(provider)
POST    /authenticate/:provider     securesocial.controllers.ProviderController.authenticateByPost(provider)
GET     /not-authorized             securesocial.controllers.ProviderController.notAuthorized
尝试以下示例,而不是基于旧版本的securesocal:

# your secure page
GET        /                        @controllers.Application.index
# securesocial routes
GET        /login                   @securesocial.controllers.LoginPage.login
GET        /logout                  @securesocial.controllers.LoginPage.logout
->         /auth                    securesocial.Routes
为了运行一个工作示例,您需要以下内容:

securesocial.conf文件在conf文件夹中创建,并包含在application.conf文件中,以便获取它 InMemoryUserService.scala Global.scala 您的安全应用程序控制器 您的安全页面 securesocial.conf

您需要配置smtp邮件设置和任何securesocial配置

InMemoryUserService

斯卡拉

爪哇

安全应用程序控制器

安全页面-index.scala.html

@(user: securesocial.core.BasicProfile)(implicit request: RequestHeader, env: securesocial.core.RuntimeEnvironment[service.DemoUser])

@main("Secure Page") {
    <h2>User Id:@user.userId</h2>
    <hr>
    <a class="btn" href="@securesocial.controllers.routes.LoginPage.logout()">Logout</a>
}
有人能帮助我了解如何将主快照添加到 现有java项目

我只尝试了Scala版本,没有尝试Java,但我希望下面的内容能有所帮助

在build.sbt文件中,向libraryDependencies添加以下行:

"ws.securesocial" %% "securesocial" % "master-SNAPSHOT"
没有Build.scala文件,但我看到有一个Build.sbt文件 乐。做 是否将此块添加到build.sbt文件

object ApplicationBuild extends Build {
val appName         = "my-first-app"
val appVersion      = "1.0-SNAPSHOT"

val appDependencies = Seq(
    "ws.securesocial" %% "securesocial" % "master-SNAPSHOT"
)
val main = play.Project(appName, appVersion, appDependencies).settings(
    resolvers += Resolver.sonatypeRepo("releases")
)

val main = play.Project(appName, appVersion, appDependencies).settings(
  resolvers += Resolver.sonatypeRepo("snapshots")
)
您需要添加到build.sbt的唯一其他内容是Sonatype OSS快照存储库URL:

resolvers += 
  "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"
复制上面的块之后,我在 conf文件夹。然后我将所有插件复制到该文件并保存

1500:com.typesafe.plugin.CommonsMailerPlugin
9994:securesocial.core.DefaultAuthenticatorStore
9995:securesocial.core.DefaultIdGenerator
9996:securesocial.core.providers.utils.DefaultPasswordValidator
9997:securesocial.controllers.DefaultTemplatesPlugin
9998:your.user.Service.Implementation <-- Important: You need to change this
9999:securesocial.core.providers.utils.BCryptPasswordHasher
10000:securesocial.core.providers.TwitterProvider
10001:securesocial.core.providers.FacebookProvider
10002:securesocial.core.providers.GoogleProvider
10003:securesocial.core.providers.LinkedInProvider
10004:securesocial.core.providers.UsernamePasswordProvider
10005:securesocial.core.providers.GitHubProvider
10006:securesocial.core.providers.FoursquareProvider
10007:securesocial.core.providers.XingProvider
10008:securesocial.core.providers.VkProvider
10009:securesocial.core.providers.InstagramProvider
您需要在play.plugins文件中配置的唯一插件是CommonMailerPlugin:

1500:com.typesafe.plugin.CommonsMailerPlugin
接下来,我将所有路由复制到路由文件中

# Login page
GET     /login                      securesocial.controllers.LoginPage.login
GET     /logout                     securesocial.controllers.LoginPage.logout

# User Registration and password handling 
GET     /signup                     securesocial.controllers.Registration.startSignUp
POST    /signup                     securesocial.controllers.Registration.handleStartSignUp
GET     /signup/:token              securesocial.controllers.Registration.signUp(token)
POST    /signup/:token              securesocial.controllers.Registration.handleSignUp(token)
GET     /reset                      securesocial.controllers.Registration.startResetPassword
POST    /reset                      securesocial.controllers.Registration.handleStartResetPassword
GET     /reset/:token               securesocial.controllers.Registration.resetPassword(token)
POST    /reset/:token               securesocial.controllers.Registration.handleResetPassword(token)
GET     /password                   securesocial.controllers.PasswordChange.page
POST    /password                   securesocial.controllers.PasswordChange.handlePasswordChange

# Providers entry points
GET     /authenticate/:provider     securesocial.controllers.ProviderController.authenticate(provider)
POST    /authenticate/:provider     securesocial.controllers.ProviderController.authenticateByPost(provider)
GET     /not-authorized             securesocial.controllers.ProviderController.notAuthorized
尝试以下示例,而不是基于旧版本的securesocal:

# your secure page
GET        /                        @controllers.Application.index
# securesocial routes
GET        /login                   @securesocial.controllers.LoginPage.login
GET        /logout                  @securesocial.controllers.LoginPage.logout
->         /auth                    securesocial.Routes
为了运行一个工作示例,您需要以下内容:

securesocial.conf文件在conf文件夹中创建,并包含在application.conf文件中,以便获取它 InMemoryUserService.scala Global.scala 您的安全应用程序控制器 您的安全页面 securesocial.conf

您需要配置smtp邮件设置和任何securesocial配置

InMemoryUserService

斯卡拉

爪哇

安全应用程序控制器

安全页面-index.scala.html

@(user: securesocial.core.BasicProfile)(implicit request: RequestHeader, env: securesocial.core.RuntimeEnvironment[service.DemoUser])

@main("Secure Page") {
    <h2>User Id:@user.userId</h2>
    <hr>
    <a class="btn" href="@securesocial.controllers.routes.LoginPage.logout()">Logout</a>
}

你看过安装指南了吗?对我是否必须将行ws.securesocial%%securesocial%2.1.4更改为其他内容,以及在何处添加它?是否将其添加到build.sbt?它是否添加到块中:libraryDependencies++=Seq javaJdbc、javaEbean、cache、javaWs我添加了关于我的问题的更多详细信息您是否阅读了安装指南?对我是否必须将行ws.securesocial%%securesocial%2.1.4更改为其他内容,以及在何处添加它?是否将其添加到build.sbt?它是否添加到块中:libraryDependencies++=Seq javaJdbc、javaEbean、cache、javaWs我添加了更多关于如何配置play插件的问题的详细信息?您的意思是play.plugins文件中有什么内容,还是如何配置secure social?conf/play.plugins文件中唯一需要的一行是:1500:com.typesafe.plugin.CommonsMailerPlugin。Secure social提供一个默认的securesocial.conf文件供您编辑。有许多选项可供选择。您说,您需要在play.plugins文件中配置的唯一插件是CommonMailerPlugin:但我不知道如何配置。我在application.conf文件中配置了smtp设置,在build.sbt文件中添加了库依赖项。您可以查看play start应用程序模板,其中有一个插件配置示例:。另请查看此stackoverflow页面,因为根据所使用的Play版本,该软件包似乎存在一些问题:如何配置Play插件?您的意思是Play.plugins文件中有什么内容,还是如何配置secure social?conf/play.plugins文件中唯一需要的一行是:1500:com.typesafe.plugin.CommonsMailerPlugin。Secure social提供一个默认的securesocial.conf文件供您编辑。有许多选项可供选择。您说,您需要在play.plugins文件中配置的唯一插件是CommonMailerPlugin:但我不知道如何配置。我在application.conf文件中配置了smtp设置,在build.sbt文件中添加了库依赖项。您可以查看play start应用程序模板,其中有一个插件配置示例:。另请查看此stackoverflow页面,因为根据所使用的Play版本,软件包似乎存在一些问题: