13

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

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

在项目/plugins.sbt

addSbtPlugin("com.twitter" %% "scrooge-sbt-plugin" % "3.3.2")

在 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"
)

之后我play clean-all得到play-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
[warn] ==== Typesafe repository: tried
[warn]   http://repo.typesafe.com/typesafe/releases/com/twitter/scrooge-sbt-plugin_2.10_0.13/3.3.2/scrooge-sbt-plugin-3.3.2.pom
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: com.twitter#scrooge-sbt-plugin;3.3.2: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn] 
[warn]  Note: Some unresolved dependencies have extra attributes.  Check that these dependencies exist with the requested attributes.
[warn]      com.twitter:scrooge-sbt-plugin:3.3.2 (sbtVersion=0.13, scalaVersion=2.10)
[warn] 
sbt.ResolveException: unresolved dependency: com.twitter#scrooge-sbt-plugin;3.3.2: not found

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

4

2 回答 2

7

存储库位于https://oss.sonatype.org/content/groups/public上。


通过查看Build.scala,您可以了解它们发布到哪个存储库。

如果您查看https://oss.sonatype.org/content/groups/public/com/twitter/并搜索“scrooge-sbt-plugin”,您会找到以“_0.12”结尾的文件夹,所以它是在那里作为 SBT 0.12.x 插件发布。您可能无法将此插件用于 Play 2.2.x,因为它使用 SBT 0.13.x。

版本 3.3.2 不是最新版本,我无法解决所有文件。使用 3.9.2 作品:

project/build.properties 必须包含 SBT 0.12(示例):

sbt.version=0.12.2

project/plugins.sbt 必须包含解析器:

resolvers += "sonatype" at "https://oss.sonatype.org/content/groups/public"

addSbtPlugin("com.twitter" %% "scrooge-sbt-plugin" % "3.9.2") 

最后 build.sbt 或 Build.scala 必须包含:

com.twitter.scrooge.ScroogeSBT.newSettings

scalaVersion := "2.10.1"

libraryDependencies ++= Seq(
  "org.apache.thrift" % "libthrift" % "0.8.0",
  "com.twitter" %% "scrooge-core" % "3.9.2",
  "com.twitter" %% "finagle-thrift" % "6.5.0"
) 
于 2013-10-25T05:54:44.820 回答
-1

首先,3.16.3 版本是 sbt 0.13.x 的最新版本

你说的存储库是什么意思?

代码库在 GitHub 上,所有的 Scrooge 东西,包括 sbt-plugin 东西都在那里。

至于工件存储库,我很确定它位于 maven Central 或其他一些标准存储库上。您不必在 sbt 构建中添加解析器。但是,如果您出于某种原因这样做,那么@Schleichardt 提到的 sonatype 似乎是正确的。

于 2014-09-24T20:32:42.980 回答