如何从sbt中的github项目中构建jar文件以用于scala程序

如何从sbt中的github项目中构建jar文件以用于scala程序,scala,sbt,amazon-dynamodb,Scala,Sbt,Amazon Dynamodb,我试图使用scala访问Amazon的DynamoDB,并在github上发现了这个很棒的包 因此,我将代码下载为zip文件,解压缩,然后执行“sbt clean test”,并得到以下错误 error sbt.ResolveException: unresolved dependency: asyncdynamo#async-dynamo;1.6.0: not found 问题:这是生成可以包含在Scala程序中的jar文件的正确方法还是有更好的方法? 提前谢谢 编辑: 为了其他人的利益,文

我试图使用scala访问Amazon的DynamoDB,并在github上发现了这个很棒的包

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

error sbt.ResolveException: unresolved dependency: asyncdynamo#async-dynamo;1.6.0: not found
问题:这是生成可以包含在Scala程序中的jar文件的正确方法还是有更好的方法? 提前谢谢

编辑:


为了其他人的利益,文档提供了很多关于构建过程的信息

您不是唯一一个对此有问题的人,请参见github问题页面:

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

我克隆了repo,并在稍微更改了release.sbt之后能够运行sbt包。我不得不更改“publishTo”变量,因为它似乎取决于repository creators本地环境变量,所以我只是将其注释掉

我没有发现依赖性问题,因此我认为它的声明是正确的。虽然它试图运行的测试确实失败了,但sbt包编译后生成的.jar很好

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

分解器+=“piotrga”位于 “”

libraryDependencies+=“异步发电机”%“异步发电机”%“1.6”


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

您是否使用sbt作为项目的构建工具?github项目页面上的Readme.md告诉您如何在build.sbt中设置依赖项。应该不需要“手动”创建一个jar。可能的重复和非常感谢我读到的在注释publishTo变量后能够使其工作。正如所指出的,一个更干净的解决方案是将其作为sbt中的依赖项使用,但很乐意提供帮助!如果答案有效,请接受。