标签: scrooge

scrooge-sbt-plugin的存储库是什么?

什么是当前版本的scrooge-sbt-plugin的存储库?或者设置说明是否过时?

根据文档,我将其添加到Play Framework项目中:

在project/plugins.sbt中

addSbtPlugin("com.twitter" %% "scrooge-sbt-plugin" % "3.3.2")
Run Code Online (Sandbox Code Playgroud)

在build.sbt中:

com.twitter.scrooge.ScroogeSBT.newSettings

libraryDependencies ++= Seq(
  "org.apache.thrift" % "libthrift" % "0.8.0",
  "com.twitter" %% "scrooge-core" % "3.3.2",
  "com.twitter" %% "finagle-thrift" % "6.5.0"
)
Run Code Online (Sandbox Code Playgroud)

经过play clean-allplay-compile我得到的输出:

[warn]  module not found: com.twitter#scrooge-sbt-plugin;3.3.2
[warn] ==== typesafe-ivy-releases: tried
[warn]   http://repo.typesafe.com/typesafe/ivy-releases/com.twitter/scrooge-sbt-plugin/scala_2.10/sbt_0.13/3.3.2/ivys/ivy.xml
[warn] ==== sbt-plugin-releases: tried
[warn]   http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/com.twitter/scrooge-sbt-plugin/scala_2.10/sbt_0.13/3.3.2/ivys/ivy.xml
[warn] ==== local: tried
[warn]   /opt/play-2.2.0/repository/local/com.twitter/scrooge-sbt-plugin/scala_2.10/sbt_0.13/3.3.2/ivys/ivy.xml
[warn] ==== Maven2 Local: tried
[warn]   file:/home/fernando/.m2/repository/com/twitter/scrooge-sbt-plugin_2.10_0.13/3.3.2/scrooge-sbt-plugin-3.3.2.pom
[warn] ==== sonatype-oss-snapshots: tried
[warn]   http://oss.sonatype.org/content/repositories/snapshots/com/twitter/scrooge-sbt-plugin_2.10_0.13/3.3.2/scrooge-sbt-plugin-3.3.2.pom
[warn] ==== public: tried
[warn]   http://repo1.maven.org/maven2/com/twitter/scrooge-sbt-plugin_2.10_0.13/3.3.2/scrooge-sbt-plugin-3.3.2.pom …
Run Code Online (Sandbox Code Playgroud)

scala thrift sbt playframework scrooge

13
推荐指数
1
解决办法
2824
查看次数

如何安装和使用Scrooge

我想用Scrooge编写一个Thrift服务.

Thrift几乎没有文档,Scrooge甚至更少.

如何在Ubuntu或OSX机器上安装Scrooge?

安装完成后,我创建了一个.thrift,如何使用Scrooge生成服务器代码和客户端代码?

scala thrift thrift-protocol scrooge

6
推荐指数
1
解决办法
873
查看次数

无法编译由 scrooge thrift 插件生成的源代码

我的 plugins.sbt 是

addSbtPlugin("com.twitter" % "scrooge-sbt-plugin" % "4.8.0")
Run Code Online (Sandbox Code Playgroud)

我的 build.sbt 是

val finagleVersion = "6.45.0"

lazy val myProject = Project("FinagleTest", file("."))
   .settings(
   name := "FinagleTest",
   version := "1.0",
   scalaVersion := "2.12.2",
   libraryDependencies ++= Seq(
      "org.apache.thrift" % "libthrift" % "0.9.2",
      "com.twitter" %% "scrooge-core" % "4.18.0" exclude("com.twitter", "libthrift"),
      "com.twitter" %% "finagle-thrift" % finagleVersion exclude("com.twitter", "libthrift"),
      "com.twitter" %% "finagle-http" % finagleVersion,
      "com.twitter" %% "finagle-core" % finagleVersion
   ),
   scroogeThriftSourceFolder in Compile := {
      val base = baseDirectory.value
      base / "src/main/thrift"
   }
)
Run Code Online (Sandbox Code Playgroud)

src/main/thrift …

scala thrift-protocol scrooge

5
推荐指数
1
解决办法
527
查看次数

使用python或ruby中的scrooge和客户端在scala中编写一个thrift服务器

我想在Scala中编写一个thrift服务实现(使用Scrooge)但不使用Finagle,因为我无法为Finagle服务器编写ruby/python客户端.问题是,使用scrooge服务似乎没有实现"处理器"类.

假设我有这样的节俭定义:

service TestService {
   void testFunction(1: string message);
}
Run Code Online (Sandbox Code Playgroud)

我使用scrooge生成scala文件,当我尝试使用thrift的标准实现来scala运行服务器:

val st = new TServerSocket(9999)
val processor = new TestService.Processor(new TestServiceImpl)
val arg = new TThreadPoolServer.Args(st)
arg.processor(processor) 
val server = new TThreadPoolServer(arg)
server.serve()
Run Code Online (Sandbox Code Playgroud)

生成的TestService对象似乎没有Processor内部类.不知道如何在没有Finagle的情况下做到这一点?或者作为另一种解决方案,如何将一个python或ruby客户端写入finagle thrift服务器?

scala thrift finagle scrooge

4
推荐指数
2
解决办法
4119
查看次数

如何关闭Finagle Thrift客户端?

我正在使用scrooge + thrift来生成我的服务器和客户端代码.到目前为止一切正常.

这是我如何使用客户端的简化示例:

private lazy val client =
  Thrift.newIface[MyPingService[Future]](s"$host:$port")

def main(args: Array[String]): Unit = {
  logger.info("ping!")
  client.ping().foreach { _ =>
    logger.info("pong!")
    // TODO: close client
    sys.exit(0)
  }
}
Run Code Online (Sandbox Code Playgroud)

一切都工作正常,但服务器抱怨程序退出未关闭的连接.我看了一遍,但我似乎无法弄清楚如何关闭client实例.

所以我的问题是,你如何关闭Finagle的节俭客户?我觉得我错过了一些明显的东西.

scala thrift finagle scrooge

3
推荐指数
1
解决办法
1012
查看次数

标签 统计

scala ×5

scrooge ×5

thrift ×4

finagle ×2

thrift-protocol ×2

playframework ×1

sbt ×1