[явно нубский вопрос] По сути, у меня нет правильной мысленной модели npm и того, как пакеты правильно установлены, работают и впоследствии запускаются.
Я проиллюстрируюс двумя примерами.Решение этих проблем должно улучшить эту (отсутствующую) ментальную модель.
Например, я установил этот пакет в каталог с именем npm
.При первой установке были некоторые жалобы от установщика.Вспоминая процедуру установки возвращает только одну ошибку, которую я не выбрал: ENOENT: no such file or directory, open '/Volumes/Mo/Users/main/r/npm/package.json'
Насколько я понимаю, npm устанавливает каталог node_modules
, в котором он устанавливает вызываемый пакет и множество зависимостей.В каталоге пакета @mapbox/makizushi
находится файл package.json.
Если я cd
в указанном выше каталоге в консоли, то запустите первую команду, предложенную пакетом:
node
> var makizushi = require('makizushi');
Thrown:
{ Error: Cannot find module 'makizushi'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18) code: 'MODULE_NOT_FOUND' }
Что странно, поскольку файлы установлены, и консоль запускается из своего каталога ...
Второй пример с использованием этого хранилища .Я пытался как загрузить и запустить npm install
, так и с полной командой npm install @webgeodatavore/express-simplestyle-spec
При первой установке выдается ряд ошибок, например:
> mapnik@3.7.2 install /Volumes/Mo/Users/dvodvo/r/npm/express-simplestyle-spec-master/node_modules/mapnik
> node-pre-gyp install --fallback-to-build
[...]
gyp ERR! cwd /Volumes/Mo/Users/main/r/npm/express-simplestyle-spec-master/node_modules/mapnik
gyp ERR! node -v v10.16.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
[...]
npm WARN @webgeodatavore/express-simplestyle-spec@0.2.0 No repository field.
npm WARN @webgeodatavore/express-simplestyle-spec@0.2.0 No license field.
[...]
npm ERR! mapnik@3.7.2 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Failed at the mapnik@3.7.2 install script.
Я помнюэта ошибка появляется в первом случае (некоторое время назад).
Итак, как можно справиться с такими проблемами зависимости?Если установщик направляет установку в каталог /usr/local/lib/node_modules/npm/node_modules/
, в чем смысл жалобы package.json
?При условии правильной установки, как пакет вызывается и по какому пути?