我正在尝试编写执行以下操作的 gradle 任务:
- 执行脚本获取一些数据(假设里面有 curl)
- 使用此数据设置环境变量。
我想设置这个环境变量,以便其他 gradle 任务可以使用它进行进一步处理。
我的代码如下所示:
task myTask(type: Exec) {
executable "sh"
args "-c", "export", "myVar=\$(sh ./script.sh)"
doLast {
println System.getenv("myVar")
}
}
但是,在执行时,我在控制台中看到我的所有 env 变量都被打印(export KEY=VALUE)并且 System.getenv("myVar") 打印为 null。
我究竟做错了什么?也许有更好的方法来实现我的目标?