3

https://github.com/philcali/sbt-aws-plugin给出的示例如下:

awsSsh.scripts += NamedSshScript("deploy", execute = {
  sshClient =>
  val jar = "~/" + (jarName in assembly).value
  val assemblyJar = (outputPath in assembly).value.getAbsolutePath

  sshClient.upload(assemblyJar, jar).right.map {
    _.exec("java -jar " + jar)
  }
})

当我尝试这个时,我得到了错误:

/Users/joky/GoCatch/go/build.sbt:20: error: A setting cannot depend on a task
  val jar = "~/" + (jarName in assembly).value

sbt-assembly中,jarName被定义为一项任务。我检查了 git 日志sbt-assembly,发现在一个阶段(大约一年前)它从设置更改为任务。

如何从 sbt-aws-plugin 中描述的脚本中使用 sbt-assembly 生成的 jar 的名称?

谢谢!

4

1 回答 1

0

请参阅https://github.com/philcali/sbt-aws-plugin/issues/1。@philcali 写道:

我需要更新自述文件,或将脚本更改为任务(确实应该如此)。基本上,您必须使用 awsEc2.running 作为解决方法,或者定义一个执行相同操作的 awsEc2 操作。

于 2014-01-23T06:27:27.283 回答