Node.js无法找到模块 - 在Windows上干扰cygwin

Gei*_*eir 5 cygwin less node.js npm twitter-bootstrap

我正在测试Bootstrap框架(来自Twitter)并尝试在安装Node.js后在本地构建它.它失败了,因为它找不到较少的模块(我也用'npm install -g less'安装):

C:\Users\geir\code\bootstrap>make
lessc html/less/bootstrap.less > html/css/bootstrap.css

node.js:201
    throw e; // process.nextTick error, or 'error' event on first tick
          ^
Error: Cannot find module 'C:\cygdrive\c\Users\geir\AppData\Roaming\npm\node_modules\less\bin\lessc'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Array.0 (module.js:479:10)
    at EventEmitter._tickCallback (node.js:192:40)
Makefile:2: recipe for target `all' failed
make: *** [all] Error 1
Run Code Online (Sandbox Code Playgroud)

它失败的原因是因为当make正在寻找模块时,"cygdrive"被预先添加到文件夹层次结构中,我已经验证了thtat'minorec'实际上是在C:\ Users\geir\AppData\Roaming \npm \中找到的node_modules\less\bin\lessc,我可以从命令行运行它.

我试过以下但没有成功:

  • 重新排序PATH env变量中的文件夹,以便node.js和npm在cygwin之前出现 - 相同的结果.
  • 从PATH中删除cygwin - make命令停止工作.
  • 使用/不使用'-g'参数安装'less'(npm)
  • 重新安装node.js

任何线索?

Ria*_*zvi 1

从 Cygwin 终端拨打电话。打开 Cygwin 终端,然后 cd 进入 C:\Users\geir\code\bootstrap 文件夹的 cygwin 别名,然后运行 ​​make:

geir@WINHOSTNAME ~
$cd /cygdrive/c/Users/geir/code/bootstrap
geir@WINHOSTNAME /cygdrive/c/Users/geir/code/bootstrap
$make
Run Code Online (Sandbox Code Playgroud)