【问题标题】:Grunt build with Sublime Text 2: process.env undefined使用 Sublime Text 2 构建 Grunt:process.env 未定义
【发布时间】:2013-05-01 17:23:59
【问题描述】:

当我从命令行运行 grunt 时,它运行良好,但如果我创建一个 Sublime Text 2 构建它“似乎”运行良好,除了任何使用 process.env.SOME_VARIABLE 的地方它返回为未定义。

基本上,从 ST2 开始:

dest = process.env.CATALINA_HOME + "/webapps/MyApp/"

返回

"undefined/webapps/MyApp"

我的所有文件都被复制到项目路径中的一个新的“未定义”目录,而不是应该部署到的 Tomcat 目录。

有没有办法让 Sublime Text 2 尊重/识别节点的 process.env 变量?

【问题讨论】:

    标签: node.js sublimetext2 gruntjs


    【解决方案1】:

    Sublime 正在启动一个新进程来运行你的构建,它似乎没有像你在命令行中那样设置环境变量。

    您可以在构建定义中使用额外的 env 选项,将必要的环境变量传递给新进程。

    它接受这样的 JSON 对象:

    env: {"SOME_VARIABLE": "/full/path/to/something"}
    

    您可以在此链接中查看可用选项以及对 env 选项的更好描述:http://sublimetext.info/docs/en/reference/build_systems.html#options

    【讨论】:

    • 谢谢!在您的帖子之后,我搜索了如何格式化 env 选项并在这里找到了答案:stackoverflow.com/questions/8574919/… 基本上,需要将 env 设置为 JSON 对象,如下所示: env: {"CATALINA_HOME ": "/full/path/to/tomcat"}
    • @Jason 谢谢,我也会将信息添加到答案中,以使其更完整。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多