英文:
Executing a node script inside a golang project/file
问题
我正在尝试在我的 Golang 项目中执行或运行一个 Node 脚本。我正在使用 os/exec
。
data, err := exec.Command("node", "api.js", "resources/node/api.js").Output()
if err != nil {
panic(err)
}
output := string(data)
fmt.Println(output)
这是我得到的响应:
panic: exec: "node": 可执行文件在 %PATH% 中未找到
我不确定我可能做错了什么,或者是否有其他执行此命令的替代方法。我找到的都是执行 .sh 命令的方法。
非常感谢您的帮助。
英文:
I'm trying to exec or run a node script inside my golang project. I'm using os/exec
data, err := exec.Command("node api.js", "resources/node/api.js").Output()
if err != nil {
panic(err)
}
output := string(data)
fmt.Println(output)
this it the response I'm getting:
panic: exec: "node api.js": executable file not found in %PATH%
Not sure What I might be wrong or if there is an alternative way to execute this command. All I found was ways to execute .sh command
Your assistance will be greatly appreciated.
答案1
得分: 2
我通过在命令和文件中使用绝对路径来解决了这个问题,以下是一个可工作的代码示例:
data, err := exec.Command("C:\\Program Files\\nodejs\\node", "C:\\Users\\Administrator\\Desktop\\project\\resources\\node\\api.js").Output()
if err != nil {
panic(err)
}
output := string(data)
fmt.Println(output)
请注意,这是一个Go语言的示例代码。
英文:
I resolved it by using absolute paths for both the command and the file, here is a working code sample:
data, err := exec.Command("C:\\Program Files\\nodejs\\node", "C:\\Users\\Administrator\\Desktop\\project\\resources\\node\\api.js").Output()
if err != nil {
panic(err)
}
output := string(data)
fmt.Println(output)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论