2015-10-30 2 views
2

Я следую учебник стека MEAN, который требует, чтобы у меня экспресс установили:НПМ установить экспресс-генератор не устанавливается экспресс

Я бегу это:

npm install -g express-generator

и это мои результаты:

[email protected]:~$ npm install -g express-generator 
/home/username/npm/bin/express -> /home/username/npm/lib/node_modules/express-generator/bin/express 
[email protected] /home/username/npm/lib/node_modules/express-generator 
├── [email protected] 
├── [email protected] ([email protected]) 
└── [email protected] ([email protected]) 

но когда я

express --ejs flapper-news

The program 'express' is currently not installed. You can install it by typing: 
sudo apt-get install node-express 

что я делаю неправильно?

Спасибо за внимание.

редактировать

Когда я сделать npm install

[email protected]:~/Documents/mean/flapper_news$ npm install 
npm ERR! install Couldn't read dependencies 
npm ERR! Linux 3.16.0-51-generic 
npm ERR! argv "/home/username/local/bin/node" "/home/username/local/bin/npm" "install" 
npm ERR! node v4.2.1 
npm ERR! npm v2.14.7 
npm ERR! path /home/username/Documents/mean/flapper_news/package.json 
npm ERR! code ENOPACKAGEJSON 
npm ERR! errno -2 
npm ERR! syscall open 

npm ERR! package.json ENOENT: no such file or directory, open '/home/username/Documents/mean/flapper_news/package.json' 
npm ERR! package.json This is most likely not a problem with npm itself. 
npm ERR! package.json npm can't find a package.json file in your current directory. 

npm ERR! Please include the following file with any support request: 
npm ERR!  /home/username/Documents/mean/flapper_news/npm-debug.log 

edit2

после запуска npm install -g express и набрав express -v я получаю это:

bash: /usr/bin/express: No such file or directory

Edit3

Это мой .bashrc файл:

### Added by the Heroku Toolbelt 
export PATH="/usr/local/heroku/bin:$PATH" 

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting 
export PATH=$HOME/local/bin:$PATH 
export NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript:/home/username/npm/lib/node_modules 
export PATH=/home/username/Android/Sdk/platform-tools:$PATH 
export PATH=/home/username/Android/Sdk/tools:$PATH 
+0

просто сделайте 'npm install -g express' тоже. здесь http://stackoverflow.com/questions/23367534/what-is-the-different-between-express-and-express-generator –

+0

@aishwatsingh, что не требуется для этого .. экспресс-генератору очень мало что нужно сделать с экспресс. Все, что он делает, это установить приложение, которое использует экспресс-экспресс, будет установлено на следующем шаге. –

+0

Согласно документу npm модуля, вы должны установить зависимости с установкой $ npm. Вы попробовали это? – TGrif

ответ

5

Глядя на этой линии от вашего выхода на npm install -g express generator

/home/username/npm/bin/express -> /home/username/npm/lib/node_modules/express-generator/bin/express 

Ваш НПМ установка глобальных модулей в вашей домашней директории и он помещает двоичные ссылки в каталог /home/username/npm/bin, поэтому вам нужно будет добавьте это на свой путь. Добавьте это в .bashrc:

export PATH=$HOME/npm/bin:$PATH 
+0

Я закончил тем самым переустановку всего и убедился, что этот путь работает, теперь все работает, за исключением того, что генератор-карма, которая является болью для исправления, но она принадлежит к другому вопросу, спасибо! –

0

Извините за очевидный вопрос, но я должен быть уверен - вы бежите в каталог, содержащий файл package.json $ npm install? После того, как вы создаете приложение с express --ejs flapper-news, вы должны cd flapper-news до npm install, не так ли?

+1

Я уверен, что так и делал, но так или иначе, я закончил переустановку узла с npm и всем остальным и убедился, что мои пути верны, как ответ by @piemonkey. Благодаря! –

Смежные вопросы