【问题标题】:Play build.scala to build.sbt isn't working for secureSocial plugin. I don't understand why?玩 build.scala 到 build.sbt 不适用于 secureSocial 插件。我不明白为什么?
【发布时间】:2014-07-10 21:01:34
【问题描述】:

我是 playFrameWork 的新手 我试图弄清楚 build.sbt 文件在 play framework 2.2 中是如何工作的 我也在尝试让secureSocial插件工作

在插件secureSocial的示例应用程序中,有一个built.scala,其中包含:

import sbt._
import Keys._
import play.Project._

object ApplicationBuild extends Build {

    val appName         = "SecureTestApp"
    val appVersion      = "1.0"

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

运行命令后,一切正常,页面显示自己 无论如何,据我了解,我应该能够删除 project/built.scala 并将其替换为 /build.sbt。我认为我的文件没问题,看起来像这样:

name := "SecureTestApp"

version := "1.0-SNAPSHOT"

libraryDependencies ++= Seq(
"securesocial" %% "securesocial" % "master-SNAPSHOT"
)

resolvers += Resolver.url("Scala Sbt", url("http://repo.scala-sbt.org/scalasbt/sbt-plugin-snapshots"))(Resolver.ivyStylePatterns)

resolvers += Resolver.sonatypeRepo("snapshots")

play.Project.playScalaSettings

这次 play run 命令可以正常启动服务器本身,但是当我启动并测试应用主页时, 我得到错误:编译错误“对象运行时环境不是包securesocial.core的成员”

Play 不再能够找到secureSocial 包。我不明白为什么? 我做错了什么?

有参数 someWhere 可以设置吗?

提前感谢您的任何回答!

编辑:一行

"ws.securesocial" %% "securesocial" % "2.1.3"

同时放入两个文件,play 并不能很好地解决两个包secureSocial的依赖关系。

【问题讨论】:

    标签: scala playframework sbt playframework-2.2 securesocial


    【解决方案1】:

    我认为问题在于该对象根本不存在于发布到存储库的版本中。如果你看一下sources,没有应该在其中定义它的文件RuntimeEnvironment.scala

    进一步如果您检查文件出现在 github 上的日期是 5 月 7 日,repo 中的最后修改日期显示为23-Jan-2014

    所以底线是您的构建工作正常,但您使用的库不是目前在 github 上的 master 分支中的库。

    【讨论】:

    • 好吧,我想我在github上犯了一个菜鸟错误,认为master实际上是最后一个发布版本。谢谢
    【解决方案2】:

    您应该使用最新的稳定版本:

          "ws.securesocial" %% "securesocial" % "2.1.3"
    

    作为解析器

           resolvers += Resolver.sonatypeRepo("releases")
    

    随着 master 不断发展,文档可能尚未更新。

    5 月 7 日在 master 上进行了重大更改,如果您之前创建了项目,这可能会破坏您的项目。 (你也可以尝试全部清理)

    【讨论】:

    • 谢谢,我在这两个文件中都试过了。通过 build.sbt,我的 play 应用程序仍然找不到 securesocial.core 包。但是现在即使有了 build.scala,play 也不能很好地依赖
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    相关资源
    最近更新 更多