当我从命令行运行 grunt 时,它工作得很好,但如果我创建一个 Sublime Text 2 构建,它“似乎”运行得很好,除了在任何地方使用 process.env.SOME_VARIABLE 时,它都会返回为未定义。
基本上,从 ST2 开始:
dest = process.env.CATALINA_HOME + "/webapps/MyApp/"
返回
"undefined/webapps/MyApp"
我的所有文件都被复制到项目路径中的新“未定义”目录,而不是应部署到的 Tomcat 目录。
有什么方法可以让 Sublime Text 2 尊重/识别 Node 的 process.env 变量吗?
最佳答案
Sublime 正在启动一个新进程来运行您的构建,该进程似乎没有像您在命令行中那样设置环境变量。
您可以在构建定义中使用额外的 env 选项,将必要的环境变量传递给新进程。
它接受这样的 JSON 对象:
env: {"SOME_VARIABLE": "/full/path/to/something"}
您可以通过此链接查看可用选项以及 env 选项的一些更好的描述:http://sublimetext.info/docs/en/reference/build_systems.html#options
关于node.js - 使用 Sublime Text 2 : process. env undefined 进行 Grunt 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16323110/