2014-04-11 23 views
33

我是新來的這兩個節點JS和表達的,我剛纔在Windows 7收到錯誤,錯誤:NPM後找不到模塊「表達」安裝

我已經安裝了快遞使用全局標誌安裝NPM:

npm install -g express 

這成功地在C:\Users\USER_NAME\AppData\Roaming\npm\node_modules\express安裝快車,並增加了C:\Users\USER_NAME\AppData\Roaming\npm我的路。

但是,在命令行中使用express並不成功。任意以明令告訴我它無法找到要執行的命令:

'express' is not recognized as an internal or external command, 
    operable program or batch file. 

展望安裝文件夾,我無法找到一個可執行文件或者(.exe或一個.cmd)。搜索過去的問題表明,node_modules文件夾(至少在過去的版本中)應該包含一個express文件夾(我有)和一個.bin文件夾,其中包含express.cmd。我似乎沒有.bin文件夾。

npm --version給我1.4.3。快遞版本看起來是3.0.0

我也試過在本地安裝它,我試過運行npm cache clean並重新安裝。這兩種方法都不會改變情況:node_modules文件夾中沒有可執行文件。

我是不是正確安裝了express?如果是這樣,爲什麼它不包含可執行文件?

回答

83

我在Windows 8.1上遇到了同樣的問題。沒有創建express.cmd,但我發現文本文件:

C:\Users\you\AppData\Roaming\npm\node_modules\express\Readme.md 

它表明運行此:

npm install -g [email protected] 

這將下載更多的東西。

之後,您可以在Windows命令提示符下使用express。這將是在您的路徑( C:\用戶\你\應用程序數據\漫遊\ NPM)

編輯:

[email protected]現已更新至[email protected], 所以用這個來代替,

npm install -g [email protected] 

答案並不完整,因爲如上所述,模塊安裝在C:\Users\you\AppData\Roaming\npm目錄中,並且不能在沒有以下情況下訪問任何模塊:1)將其鏈接到當前項目; 2)明確定義指向節點的NODE_PATH系統變量t中的正確位置他的系統。

第一種方法,

(在我們的例子express)安裝模塊後,可以通過使用CMD將當前項目目錄,下面的命令執行它鏈接到您當前的項目,

npm link express 

你會得到這樣的消息,如果它成功連接,

D:\Project\node_modules\express -> C:\Users\Sufiyan\AppData\Roaming\npm\node_modules\express

(不能在沒有以管理員權限運行cmd的情況下鏈接目錄)

第二個選項是創建或更新將節點指向系統中正確位置的NODE_PATH系統變量。詳情請閱讀this

還閱讀了有關問題,這名負責人Node.js的文檔,

http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation/

+4

正是我所需要的。謝謝。 – kotoole

+1

也爲我修好了。在Windows 8上的nodejs v0.10.26。1 – DOKKA

+0

在Linux上有同樣的問題,所以它不僅僅是Windows。解決方案工作,謝謝。 – alandarev

2

要知道,該版本由快遞--version命令回報將是快遞發電機的版本,而不是表現。

+0

我如何卸載它?因爲如果你已經安裝了-g – user3502786

+0

,那麼只需刪除本地節點模塊文件夾或其中的文件夾 –

5

要解決這個問題,你需要使用:

NPM安裝-g表達發電機@ 3

已經從以前的命令更新:

NPM安裝-g表達

8

這是所有你需要做的:

C:\node> npm install -g express-generator 

你可以找到這個和很多更多在this detailed start up tutorial

+0

因此你給了我一個-1來重構一個有用的答案?一些真正的新手會想知道的事情?我的意思是沒問題,但是讓我想要貢獻的方法是什麼? – rashadb

+0

謝謝@rashadb,正是我想要的 – DonieM

+0

我很高興這對DonieM很有幫助! – rashadb

0

我有這個問題,似乎雖然我們使用-g它被忽略。

MyProject/source/vendorC:\Users\username\AppData\Roaming\npm

複製的只是複製的內容只需要內部node_modules文件夾(如:快遞,快遞發電機,涼亭,喲,咽和包,應該在PATH)。


這個問題真的困擾每個人(或Windows用戶?),NPM程序員應該解決它!

0

以管理員身份運行cmd。它解決了「表達」沒有發現問題,在我的情況

0

npm link express從任何目錄,當你運行它npm install express將被安裝在C:\Users\****\AppData\Roaming\npm\node_modules\express鏈接快遞到你的項目目錄爲節點,默認情況下,所以你不必要安裝每次安裝在項目目錄中所需的express和其他框架,而不是指向您的節點,即您擁有應用程序的位置。