【问题标题】:how to setup grunt in webstorm on windows如何在 Windows 上的 webstorm 中设置 grunt
【发布时间】:2013-06-08 05:03:12
【问题描述】:

我在 Windows 7 上使用 Webstorm (PHPStorm)。在实际项目中,我们使用 grunt 连接 javascript 和 css 以及其他几个构建过程。

我尝试将 grunt 命令设置为 Webstorm 中的外部运行命令。我尝试的设置是:

Name: grunt  
Parameters: none  
WorkingDirectory: $ProjectFileDir$

所以现在当我尝试在 Webstorm 中启动我的外部运行命令时,我总是得到错误

> grunt
Cannot run program "grunt" (in directory "C:\Users\jawidmer\workspaces\projectname"): CreateProcess error=2, The system cannot find the file specified

当我打开命令行工具并导航到项目文件夹时,我可以毫无问题地启动 grunt。

我已经在谷歌搜索并尝试了各种不同的设置组合,但没有一个有效..

你有什么想法,我必须改变什么才能从 Webstorm 中的外部运行命令启动 grunt?

谢谢 一月

【问题讨论】:

  • 为 grunt 可执行文件(包括文件扩展名)提供 FULL PATH。很明显,当从 IDE 启动时,Windows 不知道 grunt 是什么。提供它的完整路径(或者,至少,添加一个扩展名(cmd/bat/exe 或该 grunt 文件具有的任何内容))肯定会有所帮助。另外——重启计算机可能会有所帮助(如果 PATH 变量没有正确传播——当然,如果它被修改了)。
  • 奇怪的是,我从未将 Grunt 添加到路径变量中。它只在我的项目文件夹中工作..所以我真的不知道文件位置到底在哪里。我的 Grund 模块位于以下路径:C:\Users\jawidmer\workspaces\projectname\node_modules\grunt 在这个文件夹中还有一个 Gruntfile.js。我已经尝试设置该文件夹的路径,但它似乎没有什么不同,而且错误消息也没有改变。..
  • 有一个 grunt.cmd 文件,但它位于 C:\Users\jawidmer\AppData\Roaming\npm。我还尝试指向该 cmd 的路径..
  • C:\Users\jawidmer\AppData\Roaming\npm\grunt.cmd 应该是那个——在外部工具的 Program 字段中使用它。当您第一次安装 nodejs 时,PATH 环境变量正在更新——如果不是全新安装,则忽略这一刻。
  • 您也可以尝试: 程序:cmd.exe;参数:/C "C:\Users\jawidmer\AppData\Roaming\npm\grunt.cmd";工作目录:$ProjectFileDir$

标签: command-line gruntjs webstorm


【解决方案1】:

根据您的描述,我假设我在 WebStorm 安装中配置它的方式同样适用于您:

希望对你有帮助。


更新

似乎如果您将> %TEMP%\grunt & type %TEMP%\grunt & del %TEMP%\grunt 添加到参数中(如更新后的图像所示),则会显示构建错误。

如果您需要配置任务(例如grunt watch),Parameters 字段必须如下:

watch > %TEMP%\grunt & type %TEMP%\grunt & del %TEMP%\grunt

提示来自here

【讨论】:

  • 嗨.. 我完全尝试了你的配置,似乎 grunt 启动了,但随后它在第一个任务中退出并显示以下消息: > grunt.cmd Running "concat:inline_scripts" (concat) task Process在 09:17:40 以退出代码 -1'073'741'819 结束。执行时间:1'578 毫秒。
  • 这意味着您的一项任务发生了错误。我还没有弄清楚为什么错误没有在那里打印出来。
  • 是的,好像……我想我会继续在单独的命令行窗口中使用它……谢谢你的帮助。
  • 这是一个用于输出过滤器的正则表达式:$FILE_PATH$[ \t]*[:;,\[\(\{<]$LINE$(?:[:;,\.]$COLUMN$)?.* 适用于堆栈跟踪和一些编译错误。另见jshint-path-reporter
  • @user2477219 我用解决方法更新了答案;看看吧!
【解决方案2】:

也许这个变体对某人有用: 设置 -> 外部工具

使用此工具,我可以右键单击项目中的文件夹并在上下文菜单中选择 grunt -> build

【讨论】:

    【解决方案3】:

    因为我在 linux 中遇到了 node 和 grunt 的路径问题。我决定在 Settings->External Tools 中添加以下内容,我想在 windows 中可以以相同的方式完成(PHPstorm 7,在与先前答案相同的对话框中):

    名称:grunt 组:节点

    程序:/opt/nodes/current/bin/node(我的节点文件路径) 参数:/my/directory/node_modules/grunt-cli/bin/grunt watch(我的 grunt-cli 二进制路径和 grunt 任务的参数) 工作目录:/home/user/project/(我的 Gruntfile.js 路径)

    【讨论】:

      猜你喜欢
      • 2014-02-07
      • 2013-12-30
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 2013-08-16
      • 2016-04-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多