2014-02-22 117 views
3

我試圖用崇高的文本2,已經安裝的NodeJS對於Windows,的NodeJS通過包控制插件,我得到以下錯誤:的NodeJS建立崇高,文本2

ERROR: The process "node.exe" not found.

The filename, directory name, or volume label syntax is incorrect.

[Finished in 0.1s with exit code 1]

我已經設置爲我的用戶環境變量a NODE_PATH:C:\ Program Files \ nodejs \ node.exe 有我的系統變量路徑:C:\ Program Files \ nodejs \

我的Nodejs.sublime設置設置如下:

{ 
    // save before running commands 
    "save_first": true, 
    // if present, use this command instead of plain "node" 
    // e.g. "/usr/bin/node" or "C:\bin\node.exe" 
    "node_command": "C:/Program Files/nodejs/node.exe", 
    // Same for NPM command 
    "npm_command": false, 
    // as 'NODE_PATH' environment variable for node runtime 
    "node_path": "C:/Program Files/nodejs/node.exe", 

    "expert_mode": false, 

    "ouput_to_new_tab": false 
} 

我Nodejs.sublime,打造的是建立如下:

{ 
    "cmd": ["C:/Program Files/nodejs/node.exe", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
    "selector": "source.js", 
    "shell":true, 
    "encoding": "cp1252", 
    "windows": 
    { 
     "cmd": ["taskkill /F /IM node.exe & node", "$file"] 
    }, 
    "linux": 
    { 
     "cmd": ["killall node; node", "$file"] 
    } 
} 

作爲一個方面說明,我使用JSHint使用的的NodeJS相同的路徑,它使用(即「C:/ Program Files文件/的NodeJS/node.exe「)和JSHint的作品! 任何想法,爲什麼我不能使用Nodejs構建系統? THX

回答

1

嘗試構建系統設置只是暫時執行以下操作:

{ 
    "cmd": ["C:/Program Files/nodejs/node.exe", "$file"], 
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
    "selector": "source.js", 
    "shell":true, 
} 

因爲你有一個特定的Windows的部分,它的運行,而不是"cmd"上的第一行構建系統。我懷疑taskkill命令存在某種問題。

如果這樣做的工作,你覺得需要有taskkill部分回在那裏,試着像這樣的重組是:

"windows": 
    { 
     "cmd": ["taskkill", "/F", "/IM", "node.exe", "&", "C:/Program Files/nodejs/node.exe", "$file"], 
     "shell": true 
    } 

很顯然,你不需要Linux區中存在的所有。我不太確定windows的語法,你可能需要在那裏有兩個&符號&&,而不是一個 - 我知道在OS X和Linux系統上就是這種情況。

祝你好運!

+0

我已經實施了您的修改,但後來我得到了以下錯誤:{'C:/ Program'不被識別爲內部或外部命令, 可操作的程序或批處理文件。}我看到在Windows上事實上,'Program Files'中有一個空格會產生很多錯誤。我試圖通過使用NODE_PATH,因爲我已經在我的環境變量中定義了它,但是然後Sublime打印出以下錯誤{'NODE_PATH'不被識別爲內部或外部命令, 可操作程序或批處理文件}我決定用'NODE_PATH'替換'NODE_PATH'只是'節點',它終於奏效了!Thx現在必須檢查taskkill。 – Bondifrench

+1

我相信我發現我做錯了什麼。我的目標是測試一個小的JavaScript表達式,如console.log(「Hello!」);但我使用的是nodejs構建系統,它啓動了一個新進程,這就是爲什麼之後有taskkill命令的原因。因此,爲了測試JS,我必須用{「cmd」:[「node」,「$ file」]}創建一個新的JavaScript.sublime-build,然後重新啓動並在之後生效。你指出我正確的方向。 – Bondifrench