2014-06-28 253 views
50

npm install/npm install -g命令不能在Windows 7工作NPM安裝提供了錯誤 「無法找到的package.json文件」

Node.js的正確安裝,Node.js的版本是v0.10.28

無法讀取依存關係
ENOENT,open'「filepath」\ package.json'
這很可能不是npm本身的問題。
npm無法在當前目錄中找到package.json文件。

Photo

+0

http://i.stack.imgur.com/wGoYc.jpg –

+1

「不工作」不是很有用。從你的屏幕截圖看,它在'package.json'中遇到問題。你能發表那些內容嗎?日誌說什麼? (實際上,'ENOENT'表示npm不能讀取指定的文件,你的包文件在哪裏?你有一個嗎?) – Ben

+0

是的,這生成npm-debug.log文件 鏈接如下: http:///jsfiddle.net/goldfingergerz/Whz35/ –

回答

71

你不說你要安裝的模塊 - 因此NPM查找文件package.json描述你的依賴,顯然這個文件丟失。

因此,要麼你必須明確地告訴npm要安裝哪個模塊,例如,

npm install express 

npm install -g express-generator 

,或者你必須添加一個package.json文件,並在這裏註冊您的模塊。獲取這樣一個文件的最簡單方法是讓npm通過運行創建一個

npm init 

然後添加你所需要的。請注意,這隻適用於本地安裝的模塊,不適用於全球模塊。

一個簡單的例子可能是這樣的:

{ 
    "name": "myapp", 
    "version": "0.0.1", 
    "dependencies": { 
    "express": "4.0.0" 
    } 
} 

或類似的東西。有關package.json文件的更多信息,請參閱official documentationthis interactive guide

+0

非常感謝。被卡住了2天。 – fiddle

11

node自帶npm安裝,所以你應該有一個版本的npm,但是npm被更頻繁地比node做更新,所以你要確保它的最新版本。

sudo npm install npm -g 

測試:運行npm -v。版本應該高於2.1.8。

npm install 

這就是它!

https://www.youtube.com/watch?v=wREima9e6vk

6

我不知道你要在這裏做什麼:

npm install獨自在你的home目錄不應該做太多 - 它不是一個節點的應用程序的根,所以沒有什麼可安裝的,因爲沒有package.json。

有兩種可能的解決方案:

1)cd到節點的應用程序,並運行npm install那裏。 2)如果你試圖安裝某些東西作爲在shell中使用的命令(你沒有節點應用程序),npm install -g packagename

-g標誌告訴它安裝在全局名稱空間中。

1

在我的情況有誤,我的package.json:

npm ERR! package.json must be actual JSON, not just JavaScript.

1

檢查這個link有關如何在本地安裝的應用程序express.js步驟。

但是,如果由於某種原因要全局安裝express,請確保您所在的目錄是安裝Node的目錄。 在我的Windows 10,的package.json位於

C:\Program Files\nodejs\node_modules\npm 

打開命令提示符以管理員身份,改變你的目錄到您的package.json所在的位置。

然後發出安裝命令。

0

我面臨的問題如下。

npm ERR! errno -4058 npm ERR!系統調用打開npm ERR! enoent ENOENT:否 這樣的文件或目錄,打開 'D:\ SVenu \ FullStackDevelopment \ Angular \ Angular2_Splitter_CodeSkeleton \ CodeSkeh leton \ run \ package.json'npm ERR! enoent這與npm相關,而不是 能夠找到文件。 npm ERR! enoent

我做的問題是,我運行命令npm build run而不是運行npm run build

只是分享,以幫助像我這樣的小錯誤的人。

0

>>對於Visual Studio用戶/包管理器控制檯< <

如果您正在使用Visual Studio中的包管理器控制檯,並要執行:

npm install並獲得:

ENOENT:no such file or directory,open 'C:\ Users ... \ YourProject \ package.json'

確認您在正確的目錄中執行該命令。

打開包管理器控制檯時,默認情況下VS使用解決方案文件夾

執行dir那麼你可以看到你目前在哪個文件夾。最有可能在解決方案文件夾中,這就是爲什麼你會得到這個錯誤。 現在你必須cd到你的項目文件夾。

cd YourWebProject

現在npm install應該現在的工作,如果沒有,那麼你有其他問題。