gpt4 book ai didi

python - 将 python 脚本打包到 grunt 插件中

转载 作者:太空宇宙 更新时间:2023-11-03 18:33:34 27 4
gpt4 key购买 nike

我正在创建一个 grunt 插件,它只是 wrapping a python module 。我希望不要强制插件的用户预先安装 python 模块,因此我将模块与我的插件一起打包。问题是:

当尝试将 python 文件作为子进程执行时,如何找到它的路径

执行Grunt时的当前工作目录是使用插件的程序的顶级目录,而不是插件的目录。因此,我不知道如何引用插件中的 python 文件。

最佳答案

这个问题主要涉及寻找执行节点模块的位置。这是通过查找本地 Node 变量 __dirname ( more info ) 找到的。找到该位置后,另一个重要的部分是更改 PYTHONPATH 以包含您的脚本位置。这是我需要的代码

var cp = require('child_process')
, path = require('path')
, command = 'python -c \'import mypackage; mypackage.doSomething();\''
, execOptions = {}
, rootDirectoryOfModule = path.join(__dirname, "..");

process.env['PYTHONPATH'] = rootDirectoryOfModule;

var childProcess = cp.exec(command, execOptions, function callback() { ... } );

关于python - 将 python 脚本打包到 grunt 插件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21981774/

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