NPM tidak menginstal dependensi?

8

Kesulitan mendapatkan NPM untuk menginstal dependensi npm install -ddalam direktori proyek saya dengan package.jsonfile yang ditentukan .

Ini milik saya package.json: https://gist.github.com/3068312

Dan setelah menghapus folder module node root proyek saya ( rm -rf node_modules), saya menjalankan npm install -droot proyek saya dan disambut dengan ini:

(ssh) /vagrant git:master ❯ npm install -d                                                                                                                                                                  
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info preinstall [email protected]
npm http GET https://registry.npmjs.org/sinon
npm http GET https://registry.npmjs.org/underscore
npm http GET https://registry.npmjs.org/mocha
npm http GET https://registry.npmjs.org/request
npm http 304 https://registry.npmjs.org/sinon
npm http 304 https://registry.npmjs.org/underscore
npm http 304 https://registry.npmjs.org/mocha
npm http 304 https://registry.npmjs.org/request
npm info into /vagrant [email protected]
npm info into /vagrant [email protected]
npm info into /vagrant [email protected]
npm info into /vagrant [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
npm info unbuild /vagrant/node_modules/underscore
npm info unbuild /vagrant/node_modules/mocha
npm info unbuild /vagrant/node_modules/sinon
npm info unbuild /vagrant/node_modules/request
npm ERR! error installing [email protected]
npm info unbuild /vagrant/node_modules/underscore
npm ERR! error rolling back [email protected] Error: UNKNOWN, unknown error '/vagrant/node_modules/underscore'

npm ERR! Error: ENOENT, no such file or directory '/vagrant/node_modules/underscore/package.json'
npm ERR! You may report this log at:
npm ERR!     <http://bugs.debian.org/npm>
npm ERR! or use
npm ERR!     reportbug --attach /vagrant/npm-debug.log npm
npm ERR! 
npm ERR! System Linux 3.2.0-23-generic
npm ERR! command "node" "/usr/bin/npm" "install" "-d"
npm ERR! cwd /vagrant
npm ERR! node -v v0.6.12
npm ERR! npm -v 1.1.4
npm ERR! path /vagrant/node_modules/underscore/package.json
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory '/vagrant/node_modules/underscore/package.json'
npm ERR! errno {}
npm ERR! error installing [email protected]
npm info unbuild /vagrant/node_modules/request
npm ERR! error rolling back [email protected] Error: UNKNOWN, unknown error '/vagrant/node_modules/request'
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /vagrant/npm-debug.log
npm not ok

Jika saya jalankan kembali npm install -d, kesalahan berubah menjadi apa pun paket berikutnya adalah ... jika saya terus menjalankannya berulang-ulang, akhirnya tidak mengeluh lagi dan menghasilkan:

(ssh) /vagrant git:master ❯ npm install -d                                                                                                                                                               
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info preinstall [email protected]
npm info build /vagrant
npm info linkStuff [email protected]
npm info install [email protected]
npm info postinstall [email protected]
npm info ok

Namun, tidak ada dependensi untuk paket-paket ini yang diinstal. Misalnya, cheeriomemiliki beberapa dependensi, jadi ketika saya mencoba menjalankan suite tes saya, saya disambut dengan:

(ssh) /vagrant git:master ❯ mocha --compilers coffee:coffee-script --watch spec/*                                                                                                                           


node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: Cannot find module 'cheerio-select'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:354:17)

Apa yang menyebabkannya? Saya di Ubuntu Precise64 dalam kotak virtual Vagrant .

neezer
sumber

Jawaban:

1

mungkin Ada yang salah terkait dengan symlink pada gelandangan dan masalah ini: https://github.com/isaacs/npm/issues/2380

mencoba

npm install --no-bin-link

juga dijelaskan di sini: http://www.conroyp.com/2013/04/13/symlink-shenanigans-nodejs-npm-express-vagrant/

RegisM
sumber
Saat mencoba Docker Tutorial prakhar.me/docker-curriculum/#dockerrun mendapatkan kesalahan yang sama saat menjalankan root @ ip-172-31-22-20: ~ / docker-curriculum # docker build -t ashishkarpe / foodtrucks-web.
Ashish Karpe
0

Sudahkah Anda mencoba npm cache clean?

Saya mengalami kesulitan mencoba menginstal dependensi untuk Qunit tempo hari dan itu karena phantonj gagal membangun pada jalankan pertama, tetapi ketika saya pergi untuk menginstal ulang, npm tidak membuat ulang binari dan hanya mencoba untuk membuat ulang binari dan hanya mencoba untuk membangun dari yang di-cache. Setelah mengosongkan cache dan menjalankannya ulang npm installitu membuat ulang mereka dan berhasil dibangun.

Dan Schmidt
sumber