我在gradle中编写了自定义exec任务,我想传递环境变量的运行时参数。
//Set Go Root and Go Path variables
task setGoPath(type:Exec) {
environment 'GOROOT', "$root" // Had to pass /usr/local/go
environment 'PATH', '$PATH:$GOROOT/bin'
environment 'GOPATH', "$path"//path of my current work directory
}
我正在执行gradle setGopath -Proot=/usr/local/go -Ppath=/home/go/sample
但它会引发错误,例如:java.lang.IllegalStateException:execCommand == null!
我尝试使用单引号代替GOROOT值仍然相同。是否有可能/像我一样替换环境价值?
答案 0 :(得分:0)
您正在为可执行文件正确设置环境,但您没有指定实际运行的可执行文件。
确保指定executable的路径或可执行文件的command line。
//Set Go Root and Go Path variables
task setGoPath(type:Exec) {
environment 'GOROOT', "$root" // Had to pass /usr/local/go
environment 'PATH', '$PATH:$GOROOT/bin'
environment 'GOPATH', "$path"//path of my current work directory
executable '/path/to/executable/to/run'
}