2016-04-08 18 views
1

Bir NPM paketi oluşturdum ve test etmek için onu yükledim. NPM/Node, GruntJS için bağımlılıkları npm install ile yuvalanmış bir node_modules klasörüne yüklerken ENOENT hatası atar.NPM, package.json dosyasını teslim etti

hatası oluşturmak için şu adımları uygulayın: npm install

  • npm install pavilion
  • cd node_modules/pavilion
  • package.json listelenen Grunt için bağımlılıkları, yükleme ... Hatayı aşağıda görüldüğü gibi atar. PS. lütfen aşağıdaki okumaya devam edin.

    npm ERR! Darwin 14.5.0 
    npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" 
    npm ERR! node v5.0.0 
    npm ERR! npm v3.8.6 
    npm ERR! path /Users/Baasdesign/Desktop/test/node_modules/pavilion/node_modules/.staging/pavilion-8a19d0be 
    npm ERR! code ENOENT 
    npm ERR! errno -2 
    npm ERR! syscall rename 
    
    npm ERR! enoent ENOENT: no such file or directory, rename '/Users/Baasdesign/Desktop/test/node_modules/pavilion/node_modules/.staging/pavilion-8a19d0be' -> '/Users/Baasdesign/Desktop/test/node_modules/pavilion' 
    npm ERR! enoent ENOENT: no such file or directory, rename '/Users/Baasdesign/Desktop/test/node_modules/pavilion/node_modules/.staging/pavilion-8a19d0be' -> '/Users/Baasdesign/Desktop/test/node_modules/pavilion' 
    npm ERR! enoent This is most likely not a problem with npm itself 
    npm ERR! enoent and is related to npm not being able to find a file. 
    npm ERR! enoent 
    npm ERR! Darwin 14.5.0 
    npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" 
    npm ERR! node v5.0.0 
    npm ERR! npm v3.8.6 
    npm ERR! path npm-debug.log.575049388 
    npm ERR! code ENOENT 
    npm ERR! errno -2 
    npm ERR! syscall open 
    
    npm ERR! enoent ENOENT: no such file or directory, open 'npm-debug.log.575049388' 
    npm ERR! enoent ENOENT: no such file or directory, open 'npm-debug.log.575049388' 
    npm ERR! enoent This is most likely not a problem with npm itself 
    npm ERR! enoent and is related to npm not being able to find a file. 
    npm ERR! enoent 
    
    npm ERR! Please include the following file with any support request: 
    npm ERR!  /Users/Baasdesign/Desktop/test/node_modules/pavilion/npm-debug.log 
    

    Şimdi tuhaf kısım. Paketi yüklemek için Bower'ı kullandığımda ... Bu hatayı almıyorum. İşte benim adımlar şunlardır:

    • bower install pavilion
    • cd bower_components/pavilion
    • npm install

    Her şey iyi yükler. Fark? --->package.json. Bower yükleme paketi. NPM'ler yok.

    Bower, npm'ye yayınlamadan önce kendim tarafından oluşturulduğu gibi bana temiz bir paket veriyor. NPM kurulumu bana daha fazla bilgi içeren bir package.json sağlıyor. Bower package.json'u kullandığımda ... her şey düzgün yüklenir ... node_modules klasöründe npm package.json dosyasını yapıştırıp değiştirdiğimde bile.

    Buradaki anlaşma nedir? Npm yüklemesiyle birlikte gelen package.json'un bağımlılık yüklemesini bozduğu görülüyor. İşte

    kameriye package.json teslimat: http://pastebin.com/g8FgSDNG

    Ve burada npm package.json teslimat: Ben npm cache clean denedi ama işe yaramadı http://pastebin.com/xTiQ15ih

    .

    sysinfo:

    • OSX Yosemite
    • düğüm - 5.10.1
    • npm - 3.8.6
+0

Hata mesajları normalde size fazla vermediği için NPM bazen bir acıdır .. basit bir paket denediniz mi? Json'u kurup yüklemeyi denediniz mi? –

+0

Sorununu teşhis etmek için her zaman basitten karmaşık işe gidiyorum. Bower kurulumu ile gelen package.json çok daha basit ve bu iyi çalışıyor! Ama ben de NPM'de çalışmak zorundayım :( –

cevap

1

Düğüm parlak ama bazen bir ağrı olabilir!

Son zamanlarda kendim için bu hatayı aldım ve benim için daha önceki bir düğüm noktasına geri dönme problemimi çözdüm.

Sisteminizde birkaç düğüm sürümüne sahip olmak için "düğüm sürüm yöneticisi" ni kullanabileceğiniz önceki bir yüklemeyi denemenizi ve sürümler arasında geçiş yapma yöntemleri sağlamanızı öneririm.

Çok teknik bir cevap olmadığını biliyorum ve umarım birisinin sorunuza özel bir cevabı vardır!

[https://github.com/creationix/nvm]

İşte sürüm yöneticisi bağlantı sorunun ben package.json içinde bağımlılık tasarruf etmedi oldu

+0

Teşekkürler, ama bu gerçekten bu kadar verimli değil mi? –

0

yardımcı olur bu. Sanırım bunu yaparsanız düğümü yolları yanlış yapar.

Yani doğru iş akışı:

  • npm init

  • npm install <package> --save-dev
  • cd node_modules/pavilion
  • npm install
  • Sonra çalışıyor (package.json oluşturun). <package>'un ana yönetmenin package.json'una eklenmesi gerekir.

    İlgili konular