问题标签 [scrooge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4282 浏览

scala - 在 scala 中使用 scrooge 和客户端在 python 或 ruby​​ 中编写一个节俭服务器

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

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

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

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

0 投票
1 回答
966 浏览

scala - 如何安装和使用 Scrooge

我想使用 Scrooge 编写一个 Thrift 服务。

Thrift 几乎没有文档,而 Scrooge 则更少。

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

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

0 投票
1 回答
619 浏览

scala - 如何在 SBT 中指定节俭包含文件夹?

我很难为 Scrooge 设置 scroogeThriftIncludeFolders ( https://github.com/twitter/scooge )。

在我的 build.sbt 中,我已经使用了默认设置

如何配置 scroogeThriftIncludeFolders?

0 投票
1 回答
716 浏览

scala - 生成 thrift 文件时出错包含使用 scrooge 的 Union

我用 twitter 的scrooge生成了一个 thrift 服务器,一切运行良好,但是如果我在 thrift 文件中包含联合类型,生成过程将失败:

以下是我在项目中选择的版本(您可以在此处查看我的项目):

sbt 版本:0.11.2
scala 版本:2.9.2
scrooge 插件:addSbtPlugin("com.twitter" %% "sbt11-scrooge" % "3.0.0")
scrooge 运行时:"com.twitter" %% "scrooge-runtime " % "3.1.0"

经过几次尝试,似乎上面是我可以选择的最新 scrooge 版本。

有什么建议吗?谢谢

0 投票
2 回答
2987 浏览

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

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

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

在项目/plugins.sbt

在 build.sbt 中:

之后我play clean-all得到play-compile这个输出:

maven.twttr.com上似乎有一个 3.3.1 版本。版本 3.3.2 怎么样?我在 mvnrepository.com 或 oss.sonatype.org 上找不到它。

0 投票
1 回答
970 浏览

scala - 如何从命令行执行 Scrooge?

我能够在我的 SBT 项目中包含 scrooge(我的 plugins.sbt 中的 scrooge-sbt-plugin 以及我的 build.sbt 中的库依赖项),但我无法弄清楚如何从此处列出的命令行http://twitter.github.io/scooge/CommandLine.html

0 投票
2 回答
594 浏览

scala - 发布“thrift repo”如何与 Scrooge 和相关插件一起使用?

Scrooge 有 sbt 和 maven 的插件。我对 Maven 插件不是很感兴趣。

看起来 sbt 插件能够从依赖项中提取 thrift 文件。在此处查看 scroogeThriftDependencies 选项

但是,我对它的工作原理感到非常困惑,因为我已将 sbt-plugin 添加到仅包含 thrift 文件的存储库中。我有点期望插件以某种方式发布一个工件,其中包含从生成的代码编译的类和节俭源本身,以便依赖它并定义它自己的节俭的库可以访问节俭以编译它自己的节俭。

我调查了我的构建产生的工件,发现绝对没有任何旧文件的痕迹。

任何人都知道这可能如何工作?maven 插件是否发布了节俭的资源,但这个功能只添加到消费端的 sbt 中?我误解了别的东西吗?

0 投票
1 回答
216 浏览

sbt - 是否可以跳过 Scrooge 中包含的 thrift 文件的代码生成?

Scrooge SBT 插件可以选择从库依赖项(jar 文件)中包含 Thrift IDL 文件。通常这些 jar 文件已经包含生成的源。如果我包含 Thrift IDL,我不想再次生成这些源。否则它们将被复制。

共享盗窃

共享.jar

因此,当我的项目依赖于 shared.jar 并且我在另一个 Thrift IDL 文件中包含 shared.thrift 时,我不希望 Scrooge 再次生成 Foo.scala。存档这个最直接的方法是什么?

0 投票
0 回答
96 浏览

sbt - 如何根据另一个插件的可用性修改插件中的设置和任务?

build.sbt我编写的插件文件中,我有以下两行:

但我只想在 Build 还包含Scrooge 插件时这样做。如何实现?

我尝试了以下方法,但没有奏效:

0 投票
1 回答
188 浏览

scala - 在 Play 框架中使用 scrooge

使用 Finagle 时 可以 将 thrift 文件 放在 目录src/main/thrift/下 , 编译 时 会 自动 在 目录 下 生成 thrift 文件target/scala-2.10/src_managed/main/. Play 框架如何自动执行相同的操作?