npm không thể tìm thấy gói.json


153

Tôi đang cố gắng cài đặt các phụ thuộc của một số ví dụ: npm express 2.5.8mà tôi đã tải xuống, nhưng tất cả các ứng dụng đều có cùng một lỗi:

c:\node\stylus>npm install -d
npm info it worked if it ends with ok
npm info using npm@1.1.1
npm info using node@v0.6.11
npm ERR! Couldn't read dependencies.

npm ERR! Error: ENOENT, no such file or directory 'c:\node\stylus\package.json'
npm ERR! 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!
npm ERR! System Windows_NT 6.1.7600
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program File
s (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-d"
npm ERR! cwd c:\node\stylus
npm ERR! node -v v0.6.11
npm ERR! npm -v 1.1.1
npm ERR! path c:\node\stylus\package.json
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory 'c:\node\stylus\package.json'

npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     c:\node\stylus\npm-debug.log
npm not ok

Sự phong tỏa dường như là:

không có tệp hoặc thư mục như vậy 'c: \ node \ stylus \ pack.json

Tôi đã bỏ lỡ một bước tạo ra package.json?

Tôi đang chạy:

  • Windows 7 64 bit
  • chiều 1.1.1
  • nút 6.11
  • thể hiện 2.5.8

Làm thế nào bạn tải xuống các gói? Bạn có thể cài đặt chúng theo cách thông thường (nghĩa là vớinpm install <package> ?
Linus Thiel

Tôi đã không thử điều đó, vì tôi không biết chính xác gói nào được sử dụng trong ứng dụng. Làm thế nào tôi có thể tìm ra cái này để tôi có thể thử cài đặt chúng bằng tay?
imjp

1
npm view <package>sẽ cho bạn thấy package.jsoncùng với các phụ thuộc. Ngoài ra, npm helplà bạn của bạn.
Linus Thiel

Tôi đã kiểm tra tệp gói với npm view packagenhưng tôi gặp lỗi này: i.imgur.com/AwGHu.gif . Tôi đang cố gắng để một số trong số này hoạt động: github.com/visionmedia/express/tree/2.x/examples
imjp

2
Hmmm ... <package>là một ví dụ. Hãy thử ví dụ npm view stylus.
Linus Thiel

Câu trả lời:


92

Cập nhật 2018

Đây đang trở thành một câu hỏi khá phổ biến và câu trả lời của tôi (mặc dù được đánh dấu là chính xác) không còn hợp lệ. Vui lòng tham khảo câu trả lời của Deepali dưới đây:

npm init

Câu trả lời lỗi thời

Tôi nghĩ bạn đã quên thiết lập thư mục cho express:

express <yourdirectory>

Khi bạn làm điều đó, bạn sẽ có thể thấy một loạt các tệp, sau đó bạn sẽ chạy lệnh:

npm install -d

Trân trọng.


2
và express ở đâu nếu trước đây tôi đã cài đặt "npm install -g express"?
thể thao

1
Bạn cần thực thi "npm install -g express-Generator" với> Express 4.0.0. Nguồn: stackoverflow.com/questions/23002448/express-command-not-found , sau đó, lệnh express có thể được thực thi
Lucian Depold

Bảng điều khiển UBUNTU đề xuất sudo apt install node-express-generator... Vậy, cái gì tốt nhất, apt install hay npm install?
Peter Krauss

157

Tôi nghĩ rằng, npm initsẽ tạo package.jsontập tin còn thiếu của bạn . Nó làm việc cho tôi cho trường hợp tương tự.


83

Tôi sẽ nói ngắn gọn nhưng chết người. :) cài đặt -d sẽ không làm việc cho bạn. Thật đơn giản. Thử

$ npm install -g express

3
Điều này cũng đã sửa nó cho tôi, bạn có thể giải thích việc thêm expresslệnh npm install -gnào vào đó có thể là lý do cho sự thay đổi đột ngột trong thành công không? Cảm ơn!
Jake Smith

@ jake-smith Tôi đã cập nhật câu trả lời với các tham chiếu đến tài liệu npm và một số ví dụ và giải thích bổ sung sẽ giúp làm tăng câu trả lời ban đầu.
Bryan 'BJ' Hoffpauir Jr.

Cảm ơn! Tôi đã học được khá nhiều về điều này kể từ đó, và tôi thừa nhận xấu hổ vì câu hỏi đó. Cười lớn.
Jake Smith

1
Chà, khi xem xét thêm, có vẻ như bản chỉnh sửa của tôi chưa được đánh giá ngang hàng nên những bổ sung của tôi không hiển thị. @ Zoe-Marmara bạn có thấy nó trong hàng đợi của riêng bạn không?
Bryan 'BJ' Hoffpauir Jr.

@ Bryan'BJ'Hoffpauir có lẽ bạn nên thêm nó dưới dạng nhận xét hoặc câu trả lời. Chỉnh sửa của bạn đã bị từ chối. Đó là một nỗ lực khá lớn và tôi cảm ơn bạn rất nhiều vì thời gian của bạn. :)
Zoe Marmara


16

Nếu Google "không có tệp hoặc thư mục gói.json" như vậy gửi cho bạn ở đây, thì bạn có thể đang sử dụng một phiên bản Node.js rất cũ

Trang sau có hướng dẫn tốt về cách dễ dàng cài đặt bản ổn định mới nhất trên nhiều hệ điều hành và bản phân phối:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager


Đã sử dụng node --version0.10.31 và đã có vấn đề này. Hạ cấp xuống 0,10,29 và nó vẫn chưa được giải quyết. Có vẻ như đây là một vấn đề với trình cài đặt Windows vì họ cũng đã ngừng tạo C:\Users\User\AppData\Roaming\npmthư mục.
Shawn Solomon

8
Tôi đã gặp lỗi "không có tệp hoặc thư mục pack.json" khi cố gắng chạy 'npm install' trên hướng dẫn Angular.js và kết thúc tại đây. Không rõ ràng trong các hướng dẫn mà bạn cần ghi vào mã đã kiểm tra cho hướng dẫn - trong trường hợp này, pack.json nằm trong thư mục bạn đã sao chép từ git trong bước trước ( docs.angularjs.org/tutorial )
Kevin Hooke

Giải pháp của @ KevinHooke là câu trả lời cho vấn đề này. Chạy npm -install từ thư mục ứng dụng nhân bản đã giải quyết vấn đề.
Vikram

8

Sử dụng lệnh trong win7 / win8 / win10 (CD) cho các thư mục di chuyển:

  1. Nhập thư mục dự án của bạn

  2. Chạy: npm install -d


5

Người mới bắt đầu thường thử lệnh npm từ các vị trí ngẫu nhiên. Sau khi tải xuống hoặc tạo một dự án, bạn phải cd vào thư mục dự án này. Bên trong là tập tin pack.json.

cd <path_to_project>
npm install

3

thử cài đặt lại Node.js

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -

sudo apt-get install -y nodejs

sudo apt-get install -y build-essential

và cập nhật npm

curl -L https://npmjs.com/install.sh | sudo sh

3

Nút đi kèm với npm được cài đặt, do đó bạn nên có một phiên bản của npm. Tuy nhiên, npm được cập nhật thường xuyên hơn Node, vì vậy bạn sẽ muốn đảm bảo đó là phiên bản mới nhất.

sudo npm install npm -g

Kiểm tra:

npm -v //The version should be higher than 2.1.8

Sau này, bạn sẽ có thể chạy:

npm install

2

Tôi đã có một vấn đề tương tự với npm. Vấn đề là tôi đã có dự án bên trong hai thư mục cùng tên. Tôi đã giải quyết nó bằng cách đổi tên một trong các thư mục thành cái khác (khuyến nghị thư mục bên ngoài).


2

Nó tự nói rằng package.jsonnó không có sẵn trong dự án của bạn. Vì vậy, để tạo package.json, sử dụng các bước sau:

  1. mở dấu nhắc lệnh trên thư mục dự án của bạn
  2. npm init (nó sẽ yêu cầu bạn nhập nhiều mục như tên, phiên bản, desc, v.v., nhập một số giá trị ngẫu nhiên và nhấp enter).
  3. yesvà nhấn enter

Bây giờ hãy thử lại.


2
npm init -y 

sử dụng lệnh này, nó sẽ tự động tạo tập tin pack.json với tất cả thông tin máy của bạn.


1

Vấn đề của tôi là tôi đã không có tệp pack.json vì một số lý do. Sau khi tôi quên tập tin này vào thư mục của mình, tôi đã có thể chạy cài đặt npm

https://raw.githubusercontent.com/twbs/bootstrap/master/package.json


2
Tôi biết điều này đã cũ, nhưng tôi vẫn phải nói - điều này có thể khắc phục lỗi cụ thể, nhưng đây không phải là cách đúng đắn để giải quyết vấn đề này. Bạn đang kéo xuống gói.json cho Bootstrap, một dự án hoàn toàn khác với dự án của bạn.
Sam Hanley

1

Cảm ơn bạn! Tôi cũng đã thử nhiều lựa chọn cho việc này. Tôi cũng đang sử dụng windows. Lệnh này đã giúp và tiết kiệm thời gian của tôi:

npm install -g npm@lts

1

Nó có thể rất rõ ràng,
nhưng hãy thử khởi chạy CMD(cho Windows) từ thư mục dự án , nơi đặt tệp pack.json của bạn .

Không khởi chạy CMDtừ Hệ thống hoặc từ "Thanh tìm kiếm" trong Win hoặc
di chuyển đến thư mục dự án của bạn với sự trợ giúp của cdlệnh và sau đó khởi chạy npm start.


1

ok, hãy thử đến nhà "user @ user: ~ $" (phím cd + enter) và cài đặt npm -g your_module của bạn.


1

Đi vào bên trong thư mục dự án và kiểm tra xem tệp pack.json có tồn tại không.

Nếu bạn đang tạo dự án bằng dự án Visual Studio Angular, hãy đảm bảo bạn chạy lệnh này trong Thư mục ClientApp. có một cơ hội tốt, bạn có thể tìm kiếm tệp project.json bên ngoài thư mục ClientApp.


Nó vừa mới xảy ra với tôi. Tôi muốn trả lời nhưng vì bạn đã có, hãy chấp nhận upvote của tôi: p
Aimal Khan

1

nếu tệp pack.json trong thư mục dự án bị thiếu thì bạn có thể tạo nó bằng npm init .

nếu tệp pack.json đã được tạo trong thư mục dự án thì có khả năng bạn không chạy dự án của mình từ đúng đường dẫn. Sử dụng cdyour-project-path trong terminal và sau đó chạy dự án của bạn từ đó.


0

Cho lệnh sau

sudo npm install react browserify watchify babelify --save-dev

Tôi bị lỗi tương tự

saveError ENOENT: không có tệp hoặc thư mục như vậy, mở '/Users/Path/package.json'

Nhưng khi tôi chạy lệnh

sudo npm install -gd react browserify watchify babelify --save-dev

sau đó không có tập tin hoặc thư mục bị thiếu xuất hiện.


0

Tôi đã chạy npm install -yđể bỏ qua bước câu hỏi để tạo tệp bị thiếu package.json, ycó nghĩa là có


0

Tôi cũng đã phải đối mặt với vấn đề tương tự trong khi cài đặt bản thảo. Tôi vừa khởi tạo một tệp pack.josn bằng lệnh sau

npm init -y

Và sau đó tôi đã cài đặt bản thảo của mình

npm install -g -typescript

http://blossomprogramming.blogspot.com/



0

Vui lòng kiểm tra thư mục hoặc thư mục bạn đang cài đặt gói mới. Điều này cũng xảy ra với tôi, toàn bộ dự án của tôi nằm trong thư mục con và tôi đang cố gắng cài đặt trong thư mục chính. Sau khi kiểm tra toàn bộ, tôi phát hiện ra rằng tôi phải cài đặt trong thư mục con nơi chứa các tệp dự án và tệp pack.json của tôi và nó đã được thực hiện. Hi vọng điêu nay co ich...


-1

Tạo gói.json mà không cần phải hỏi bất kỳ câu hỏi nào. Tôi đã chạy bình luận bên dưới trong Mac và Windows trong thư mục mà tôi muốn tạo pack.json và nó hoạt động

$ npm init -y

Wrote to C:\workspace\package.json:

{
  "name": "workspace",
  "version": "1.0.0",
  "description": "",
  "main": "builder.js",
  "dependencies": {
    "jasmine-spec-reporter": "^4.2.1",
    "selenium-webdriver": "^4.0.0-alpha.5"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

-2

Thêm -g trước khi tên gói làm việc cho tôi. Tìm kiếm tài liệu để giải thích tại sao điều này hoạt động ..

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.