2013-08-28 50 views

回答

5

這個問題似乎是科爾多瓦在DOS格式

一旦我把它轉化爲它似乎工作的Unix格式。 我沒有得到env:node \ r:沒有這樣的文件或目錄錯誤。

我用DOS2UNIX的做出改變 https://code.google.com/p/rudix/downloads/detail?name=dos2unix-5.3.3-0.pkg

在我的機器在科爾多瓦文件實際上是在USR/local/lib目錄/ node_modules /科爾多瓦/斌/科爾多瓦

+0

我認爲他們修正了這個bug,因此,如果你得到最新版本應該沒問題。 – Leo

+0

謝謝。我的問題來自GIT,但你的回答有助於理解它是來自一個結束不幸的壞行。下面我添加了我的解決方案 – Yahel

4

在我的Mac OS X.

我剛剛遇到了同樣的問題:我的文件的行結束符改爲CRLF(windows)而不是LS(unix)。

這讓科爾多瓦和節點無法編譯錯誤的項目:

ENV:節點\ R:這是對AUTOCRLF我沒有這樣的文件或目錄

罪魁禍首是GIT不知道爲什麼。 我在終端運行以下命令:

git config --global core.autocrlf input

然後,我不得不刪除的項目,並從GIT重新克隆它和它的工作就像一個魅力。

+0

它也適用於我,謝謝! –

+0

發現這是最簡單/最全面的解決方案。運行該配置命令,recloned該項目,一切正常。 – stephennmcdonald

11

解決方案:

$ brew install dos2unix 
$ find /usr/local/lib/node_modules -name "*.js" | xargs sudo dos2unix 

詳情:

爲OP的問題是做混帳,但我考慮了一下提了大部分的速戰速決的情況下

如果Node嘗試執行具有窗口樣式行結尾的.js文件,則會顯示問題。問題可能來自具有.js這類文件的第三方npm軟件包。

由於@Leo提到Dos2Unix是答案,下面是一個例子情況的命令鏈,而我試圖安裝Slack-cli

> npm install -g slack-cli 
> slackcli 
env: node\r: No such file or directory 

的修補程序看起來像

> brew install dos2unix 
> find /usr/local/lib/node_modules/slack-cli -name "*.js" | xargs sudo dos2unix 
> slackcli --help 

瓦拉。 。

+0

這應該是最高票數的答案。 –

+0

下面是問題線程:https://github.com/npm/npm/issues/4607 –

0

對於我的問題是在安裝一飲而盡庫文件:

'/node_modules/gulp/bin/gulp.js'

它有 '\ r' 在「結束#在/ usr/bin/env節點'行。版本:

「github上:gulpjs /吞掉#4.0」

它被固定設置:

git config --global core.autocrlf input

和重裝庫

相關問題