(генератор-полимер), вы не можете найти модуль "find-index",
Вот полная ошибка после ввода yo polymer
в чистый каталог.
module.js:338
throw err;
^
Error: Cannot find module 'find-index'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/usr/lib/node_modules/generator-polymer/node_modules/yeoman-generator/node_modules/download/node_modules/vinyl-fs/node_modules/glob-stream/node_modules/glob2base/index.js:4:17)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
Я только что переустановил все node связанные, но вот версии.
node: v0.12.7
npm: 2.11.3
yo: 1.4.7
bower: 1.4.1
grunt-cli: v0.1.13
gulp: 3.9.0
generator-polymer: 1.0.5
Обратите внимание, что при установке generator-polymer
появляется предупреждение.
npm WARN deprecated [email protected]: the module is now available as 'css-select'
npm WARN deprecated [email protected]: the module is now available as 'css-what'
Я также попытался установить три проблемных модуля вручную, которые оказались успешными.
sudo npm install -g find-index css-select css-what
У меня нет идей. node был установлен из источника, загруженного в nodejs.org.
EDIT:
Я также установил n
с помощью sudo npm install -g n
для установки node. Я попытался удалить/переустановить node/npm без везения.
EDIT2:
yo webapp
работает, поэтому виновником является (должен быть?) генератор-полимер.
Ответы
Ответ 1
Я смог исправить проблему, удалив каталог-нарушитель,
/usr/lib/node_modules/generator-polymer
Я не помню, чтобы просто переустановить генераторный полимер (sudo npm install -g generator-polymer
) полностью исправил проблему (дайте мне знать, и я обновлю ответ). Я закончил переустановку всего, чтобы все проблемы были смягчены.
Настройка среды
- Установите node.js. Следуйте инструкциям на своем сайте для установки на вашу ОС.
- Установите Yeoman, введя команду
sudo npm install -g yo
в системную консоль.
-g
устанавливает пакет по всему миру, поэтому требуется команда sudo
(ваша система может отличаться).
- Затем мы установим пару генераторов Yeoman.
- Установите полимерный генератор с помощью команды
sudo npm install -g generator-polymer
.
- (необязательно) Установите генератор полимерных элементов с помощью команды
sudo npm install -g generator-element
.
Это поможет с разработкой пользовательских полимерных элементов.
Запуск нового проекта
С настройкой среды разработки запуск проекта очень прост.
mkdir my-project
cd my-project
yo polymer
Новый полимерный проект будет настроен в каталоге my-project
, используя последние версии полимерных и других зависимостей.
Тестирование проекта
Polymer использует gulp потоковая система сборки. В своем каталоге проекта просто введите
gulp serve
См. мой Заметки Полимера 1.0 Документ Google.
Ответ 2
Я вижу, что вы устанавливаете его в глобальные модули. Вы пытались установить generator-polymer
только для проекта (он должен исправить предупреждения)
Вы указываете только версию корневых пакетов. Но проблема, кажется, в зависимостях. Подпишите трассировку стека, вызванную модулем yoman-generator/download
Вот мои версии всех депов. Посмотрите на эти пакеты и проверьте свою версию (у меня есть [email protected] и [email protected], которая отлично работает)
[email protected] node_modules/generator-polymer
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected]
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
В любом случае, я попытался бы установить все deps как локальные модули.
EDIT:
вы должны иметь этот каталог в проекте
node_modules/generator-polymer/node_modules/yeoman-generator/node_modules/download/node_modules/vinyl-fs/node_modules/glob-stream/node_modules/glob2base/node_modules/find-index
где в дереве
glob2base - 0.0.12
glob-stram - 3.1.18
винил-fs составляет 0,3,13
скачать 3.3.0
йомен-генератор - 0.18.10
Ответ 3
Существует проблема с использованием npm -g, если вы не можете получить к ней доступ без использования sudo (т.е. у вас есть разрешение на чтение/запись и т.д. в том месте, где установлены глобальные модули).
Насколько я могу выработать свою беседу, которая является виновником
Как решить проблему, выполните команду npm config edit и измените значение префикса на то, к чему у вас есть доступ без sudo. Это редактирует файл ~/.npmrc
Затем вы установите для вас глобально.