Hızlı komut bulunamadı


137

İle benim makinede küresel Express yükledikten sonra Nedense npm install -g expressben eğer cdbir dizine ve aşağıdaki hatayı alıyorum ifade çalıştırmayı denediğinizde:

express: command not found. 

Birlikte çalıştırsam bile sudoaynı çıktıyı alıyorum. Bu soruna birden fazla farklı çözüm denedim ve hiçbir şey işe yaramadı. Ben aracılığıyla düğüm yüklü vardı homebrewben tamamen düğümü kaldırıldı ve nodejs.org üzerinde yükleyici (şimdi v0.10.26 çalıştırıyorum) ve hala sorun devam aracılığıyla yeniden böylece yığın taşması bazı ipler bir sorun olabileceğini gösterdi.

Eğer benim /usr/local/lib/node_modulesExpress gitmek orada ama / usr / local / bin içinde Express ile ilgili bir şey yok. Bu bir sorun olup olmadığından emin değilim ama o dizinde diğer genel olarak yüklenmiş düğüm paketleri için ikili dosyalar olduğunu düşünüyor orada yanlış bir şey olabilir düşünüyorum.

Bu, yüklediğimde aldığım kesin çıktı:

npm http GET https://registry.npmjs.org/express
npm http 304 https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/accepts/1.0.0
npm http GET https://registry.npmjs.org/type-is/1.0.0
npm http GET https://registry.npmjs.org/range-parser/1.0.0
npm http GET https://registry.npmjs.org/cookie/0.1.0
npm http GET https://registry.npmjs.org/fresh/0.2.2
npm http GET https://registry.npmjs.org/buffer-crc32/0.2.1
npm http GET https://registry.npmjs.org/send/0.2.0
npm http GET https://registry.npmjs.org/methods/0.1.0
npm http GET https://registry.npmjs.org/cookie-signature/1.0.3
npm http GET https://registry.npmjs.org/utils-merge/1.0.0
npm http GET https://registry.npmjs.org/merge-descriptors/0.0.2
npm http GET https://registry.npmjs.org/escape-html/1.0.1
npm http GET https://registry.npmjs.org/serve-static/1.0.1
npm http GET https://registry.npmjs.org/qs/0.6.6
npm http GET https://registry.npmjs.org/path-to-regexp/0.1.2
npm http GET https://registry.npmjs.org/parseurl/1.0.1
npm http GET https://registry.npmjs.org/debug
npm http 304 https://registry.npmjs.org/cookie/0.1.0
npm http 304 https://registry.npmjs.org/type-is/1.0.0
npm http 304 https://registry.npmjs.org/buffer-crc32/0.2.1
npm http 304 https://registry.npmjs.org/methods/0.1.0
npm http 304 https://registry.npmjs.org/accepts/1.0.0
npm http 304 https://registry.npmjs.org/range-parser/1.0.0
npm http 304 https://registry.npmjs.org/cookie-signature/1.0.3
npm http 304 https://registry.npmjs.org/fresh/0.2.2
npm http 304 https://registry.npmjs.org/serve-static/1.0.1
npm http 304 https://registry.npmjs.org/qs/0.6.6
npm http 304 https://registry.npmjs.org/utils-merge/1.0.0
npm http 304 https://registry.npmjs.org/merge-descriptors/0.0.2
npm http 304 https://registry.npmjs.org/escape-html/1.0.1
npm http 304 https://registry.npmjs.org/path-to-regexp/0.1.2
npm http 304 https://registry.npmjs.org/parseurl/1.0.1
npm http 304 https://registry.npmjs.org/debug
npm http 304 https://registry.npmjs.org/send/0.2.0
npm http GET https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/send/0.1.4
npm http GET https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/negotiator
npm http 304 https://registry.npmjs.org/mime
npm http 304 https://registry.npmjs.org/mime
npm http 304 https://registry.npmjs.org/send/0.1.4
npm http GET https://registry.npmjs.org/range-parser/0.0.4
npm http GET https://registry.npmjs.org/fresh/0.2.0
npm http 304 https://registry.npmjs.org/negotiator
npm http 304 https://registry.npmjs.org/range-parser/0.0.4
npm http 304 https://registry.npmjs.org/fresh/0.2.0
express@4.0.0 /usr/local/lib/node_modules/express
├── methods@0.1.0
├── parseurl@1.0.1
├── utils-merge@1.0.0
├── merge-descriptors@0.0.2
├── escape-html@1.0.1
├── debug@0.8.0
├── cookie-signature@1.0.3
├── range-parser@1.0.0
├── fresh@0.2.2
├── qs@0.6.6
├── buffer-crc32@0.2.1
├── cookie@0.1.0
├── path-to-regexp@0.1.2
├── type-is@1.0.0 (mime@1.2.11)
├── send@0.2.0 (mime@1.2.11)
├── serve-static@1.0.1 (send@0.1.4)
└── accepts@1.0.0 (negotiator@0.3.0, mime@1.2.11)

Yanıtlar:


359

Express 4.0.0'ın piyasaya sürülmesiyle yapmanız gereken gibi görünüyor sudo npm install -g express-generator.


3
Bu yardımınız için çok teşekkürler! Dün gece saçlarımı çekmeye hazırdım.
Tony Barsotti

2
sudo belirtilen gerekçelerle gerekli değildir ve yine de çalışacaktır. stackoverflow.com/questions/4938592/…
StanleyZheng

4
Bummer, resmi belgelerden bile bahsetmiyor. ;-)
Azat

Bunu nasıl buldunuz, eğer dokümantasyonda değilse, bunu nasıl öğrenmeliyiz?
Startec

1
FWIW resmi dokümanları bundan bahsediyor [şimdi?] - expressjs.com/starter/generator.html
Steven R. Loomis

34

Çalıştırmanız gerekiyor:

npm install -gd express-generator

Cli ile orijinal ekspres, şimdi cli ayrı ekspres üreteci paketine ayrılmıştır. Başlangıçta proje tarafından oluşturulan ekspres düğüm app.js çalışıyor, çünkü app.js'deki httpserver ilgili kodu ve şimdi bin/wwwaşağıdaki proje dizinine kodun bu kısmı , app.js sadece uygulama mantık kodunu elde etmeyi sürdürüyor, bin/www. Sadece çok basit bir uygulama ve arıtma paketi bağımlılığı sürüm değişiklikleri.


2

Birkaç gündür bu zorluğu yaşıyordum. Derin bir araştırmadan sonra, mevcut her kaynağı özellikle ana kaynaktan [bu durumda EXPRESSJS.COM] okumak zorunda olduğunu öğrendim. İşte hızlı bir düzeltme.

Sürüm 4.0+ ile başlayarak, Node 8.2+ çalıştırıyorsanız, ekspres-jeneratörü kurmanız gerekmez. Basitçe çalıştırın

npx express-generator

Ekspres üreteci, çalıştırdığınızda çalıştığı gibi çalışır:express

Daha fazla ayrıntı için Başlarken bölümüne bakın.

Mutlu okuma ve araştırma saatleri.


1

Son zamanlarda ekspres-jeneratörü kurmaya çalışıyorum, ancak vereceğim,

$ zsh : command not found : express

Yaptıktan sonra

$ sudo npm install -g express
$ sudo npm install -g express-generator

Ama sonra, npm install commnand'ın konsol günlüğünü gördüm

/usr/local/Cellar/node/13.1.0/bin/express -> /usr/local/Cellar/node/13.1.0/lib/node_modules/express-generator/bin/express-cli.js

çalıştırılabilir ifadenin bin klasöründe olduğuna dair bir ipucu verdi.

Çözüm şu şekildedir: ~ / .zshrc veya ~ / .bashrc'yi açın ve yolu şu şekilde dışa aktarın:

export PATH=/usr/local/Cellar/node/13.1.0/bin:$PATH

Şu an çalışıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.