0

我正在尝试使用 scala 访问 Amazon 的 DynamoDB,并在 github https://github.com/piotrga/async-dynamo上找到了这个很棒的包

所以我将代码下载为 zip 文件,解压缩,然后执行“sbt clean test”并得到以下错误

error sbt.ResolveException: unresolved dependency: asyncdynamo#async-dynamo;1.6.0: not found

问题:这是生成可以包含在 Scala 程序中的 jar 文件的正确方法还是有更好的方法?提前致谢。

编辑:

为了他人的利益,SCALA SBT文档提供了大量有关构建过程的信息。

4

2 回答 2

1

您可以只运行“sbt publish-local”,然后在另一个项目中包含托管依赖项的行,而不是生成 jar 文件。Sbt/ivy 会看到你有这样的工件,你不需要将 jar 添加到另一个更干净的项目中。然后,例如,如果您需要更新其他项目,则无需再次替换 jar - 只需再次发布本地并清理并运行您的其他项目!

于 2013-05-13T04:05:21.693 回答
0

您似乎不是唯一一个对此有问题的人,请参阅 github 问题页面: https ://github.com/piotrga/async-dynamo/issues

命令 'sbt clean test' 将运行 sbt 检测到的测试。如果你想要一个 .jar 文件,你可以使用“sbt clean package”,它会在 target/ 文件夹中生成一个 .jar。

我克隆了 repo 并在稍微更改了 release.sbt 后能够运行 sbt 包。我不得不更改 'publishTo' 变量,因为它似乎取决于存储库创建者的本地环境变量,所以我只是将其注释掉。

我没有得到依赖问题,所以我想它是正确声明的。虽然它尝试运行的测试确实失败了,但 sbt 包编译生成 .jar 就好了。

编辑:正如 Matthias Schlaipfer 在评论中指出的那样,更优雅的方式(也更容易)就是将它作为依赖项添加到你的 build.sbt 中。从自述文件中,这是您需要添加的内容:

解析器 += “piotrga” 在“ https://github.com/piotrga/piotrga.github.com/tree/master/maven-repo

libraryDependencies += "asyncdynamo" % "async-dynamo" % "1.6"

于 2013-05-12T08:09:06.237 回答