簡體   English   中英

“無法讀取依賴項”錯誤與npm

[英]“Couldn't read dependencies” error with npm

我想啟動一個Node應用程序並使用教程創建一個package.json文件。 這是json文件:

{
    "name": "Dashboard",
    "version": "0.0.0",
    "description": "Client-A Dashboard",
    "dependencies": {
        "socket.io": "latest",
        "express": "latest",
        "jade": "latest"
    },
    "author": "tD"
}

我在嘗試運行它之前驗證了JSON文件,但是當我運行npm install命令時仍然收到錯誤消息:

npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open 'C:\projects\Client-A\Live\package.json'
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! cwd C:\projects\Client-A\Live\
npm ERR! node -v v0.8.22
npm ERR! npm -v 1.2.14
npm ERR! path C:\projects\Client-A\Live\package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\projects\Client-A\Live\npm-debug.log
npm ERR! not ok code 0

這是npm-degub.log文件

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files (x86)\\nodejs\\\\node.exe',
1 verbose cli   'C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install' ]
2 info using npm@1.2.14
3 info using node@v0.8.22
4 verbose node symlink C:\Program Files (x86)\nodejs\\node.exe
5 verbose read json C:\projects\Client-A\Live\package.json
6 error install Couldn't read dependencies
7 error Error: ENOENT, open 'C:\projects\Client-A\Live\package.json'
8 error If you need help, you may report this log at:
8 error     <http://github.com/isaacs/npm/issues>
8 error or email it to:
8 error     <npm-@googlegroups.com>
9 error System Windows_NT 6.1.7601
10 error command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
11 error cwd C:\projects\Client-A\Live\scoreboard
12 error node -v v0.8.22
13 error npm -v 1.2.14
14 error path C:\projects\Client-A\Live\package.json
15 error code ENOENT
16 error errno 34
17 verbose exit [ 34, true ]

我有一個"Invalid Name"

我從"name": "Some Name",...改為"name": "Some-Name",...

name需要是一個sluggy字符串。

嘗試添加:

"private": true,

它對我有用。

編輯 (為人們問為什么):

官方文件說明如下:


如果你在package.json中設置"private": true ,那么npm將拒絕發布它。 這是一種防止意外發布私有存儲庫的方法。 如果您希望確保給定的包只發布到特定的注冊表(例如,內部注冊表),那么使用下面描述的publishConfig哈希在發布時覆蓋registry配置參數。


您獲得的錯誤消息可能與以某種方式違反此“規則”有關(我的)。

  • 您要么將未發布的包(如您自己的應用)標記為"private": false
  • 或者你忽略了包含任何價值。

最近,我開始收到錯誤:

npm ERR! install Couldn't read dependencies
npm ERR! Error: Invalid version: "1.0"

因此,您可能需要指定包含3個數字的包的version ,例如1.0.0而不是1.0如果您收到類似的錯誤。

這很簡單,你只是不在正確的目錄中。

轉到C:\\Program Files\\nodejs\\node_modules\\npm ,您應該能夠正確運行此命令。

嘗試更新npm,它適合我

[sudo] npm install -g npm

我也得到了同樣的例外,但之前在另一台機器上運行正常。 無論如何,上面的解決方案對我沒有用。 我做了什么來解決它?

  1. 將依賴項列表復制到剪貼板中。
  2. 輸入“npm init”來創建新的package.json
  3. 將依賴項再次粘貼回package.json
  4. 再次運行“npm install”!

完成:)希望它有所幫助。

對我來說這是版本。 是的,你放在根的行,如:

{
    "name": "your-project",
    "version": "0.1"
    ...
}

是的,npm不喜歡這樣的版本,它更像是“ 0.0.1 ”。

不要問我為什么,我會告訴你這完全是愚蠢的(或“如何輕松地浪費時間”)

我的錯誤是我將文件命名為packages.json而不是package.json

我發現我不在正確的文件夾中。 在運行此命令之前,我需要轉到我剛剛克隆的文件夾。

當我在packagae.json文件中的“名稱”中有空格時,我收到此錯誤。

“NPM項目”而非“NPMProject”


不讀取json的問題與文件的權限問題相關聯。

使用此命令可以解決這個問題:

sudo chown -R $USER:$GROUP ~/.npm

這看起來不像你的問題,但是為了別人,對我來說這是由package.json中的無效版本號引起的(必須將2.4更改為2.4.0)。

1)在某些情況下,Nodejs安裝在C:\\ ProgramFiles中。 如果您沒有管理員權限,請嘗試在C:驅動器或其他目錄中安裝。

2)確保您沒有安裝在公司的代理設置之后。 這有時會影響安裝。

3)最后,確保從此目錄運行npm命令:Path \\ nodejs \\ node_modules \\ npm其中Path是您自己的目錄。

我解決了這個問題只是將我的項目從E:移動到C:。 我認為這是因為nodejs和npm安裝在我的C:中,項目在我的E:

在我將git存儲庫克隆到目錄,重命名目錄,然后嘗試運行npm install之后,我遇到了這個問題。 我不確定問題是什么,但有些事情被搞砸了。 刪除所有內容,重新克隆(這次使用正確的目錄名稱),然后運行npm install解決了我的問題。

驗證您正在使用的用戶帳戶。 如果任何系統用戶沒有安裝包的權限,則npm specialy也會顯示此消息。

我在線跟蹤文檔並認為此錯誤意味着NPM中的依賴項存在問題。 然而,經過第三次看。 我意識到這是一個錯字。 我沒有在package.json中的第一個依賴項之后添加逗號,教程要求我編輯它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM