Грабли для новичков
Jan. 24th, 2017 06:27 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Есть специальные грабли, на которые обязан наступить каждый начинающий разработчик node.js.
Итак, вы решили поиграться с каким-то самодостаточным модулем. Таким, который не нужно подключать в уже существующий проект, а можно сделать отдельную папочку под него и там попробовать его так и сяк. Пусть это будет evernote – модуль для работы с одноименным сервисом.
Вы делаете папочку evernote, npm init, оставляете все значения по умолчанию, поскольку вам все равно как будет называться это тестовое приложение, npm i evernote… И получаете облом
npm ERR! Refusing to install evernote as a dependency of itself
Что случилось? А случилось то, что вы назвали свое приложение также как пакет который собираетесь тестировать. И теперь хотите от npm странного – добавить в модуль evernote модуль evernote.
Лечится просто – редактированием package.json, где нужно придумать своему приложению новое и оригинальное имя, заведомо не пересекающееся с названиями всех пакетов, которые вы будете использовать – включая и зависимости этих пакетов тоже.