gpt4 book ai didi

sbt - 为什么 SBT 在运行外部进程时会抛出错误

转载 作者:行者123 更新时间:2023-12-04 03:11:21 24 4
gpt4 key购买 nike

我正在 SBT 中创建一个任务,它将把一些脚本上传到 S3。我正在使用 SBT 外部进程和 aws cli s"aws s3 cp ./someDir $uploadPath --recursive"上传到 S3!日志。它抛出错误

java.io.IOException: Cannot run program "aws": CreateProcess error=2, The system cannot find the file specified

这只发生在 Windows 上。当我在 Ubuntu 构建系统中运行相同的项目/任务时,它工作正常。 AWS cli 安装在 Windows 机器上并且 PATH 设置正确。

我不清楚缺少什么。

最佳答案

看来sbt内部进程库不包含windows中的PATH变量。

一个合适的解决方法是将您的 aws 命令提取到一个单独的文件中并触发该文件的执行:

您的 doSomeStuff.bat 将是:

aws s3 cp ./someDir $uploadPath --recursive

并在 build.sbt 添加

lazy val someStuff = taksKey[Unit]("Execute a aws command")
yarnBuild := {
"./doSomeStuff.bat" !
}

关于sbt - 为什么 SBT 在运行外部进程时会抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45013368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com