2016-02-12 4 views
1

Я использую локальный пакет Meteor для своего приложения (не размещен на Atmosphere.js).Горячая замена локального пакета Meteor

Когда я обновляю этот пакет в другом месте, я продолжу следующим: версия

  1. Обновление пакета.
  2. Удалить старый пакет из/packages/directory в реальном времени.
  3. Смотрите мой поиск программы для пакетов 3 раза, а затем аварии (?):

    Вашего приложения сбой. Вот последний журнал: Ошибки предотвратить запуск:

    При выборе версии пакета: ошибка: неизвестный пакет в зависимости верхнего уровня: vladimir3000: testpack

    Ваше приложение содержит ошибки. Ожидание изменения файла.

  4. Скопируйте новый пакет с новой версией.
  5. Смотрите мое приложение подбирая изменения и будет жить снова:

    vladimir3000: testpack повышен с 0.0.2 до 0.0.3 => сервер Метеор перезапущен

Есть ли способ избегайте шага 3 и более элегантно инструктируйте метеор заменить один пакет другим. Обновление Meteor не будет работать, поскольку пакет не находится в атмосфере. Или горячая замена - это что-то из мира SOA, а не из крови и волокон метеорного javascript?

ответ

0

Вы можете просто вставить файлы для пакета.

Когда вы удаляете старый пакет, Meteor видит изменение файла и восстанавливает приложение. Поскольку пакет больше не существует в каталоге пакетов, Meteor попытается вытащить его из Atmosphere, поскольку он видит, что существует зависимость от vladimir3000:testpack в .meteor/packages.

Он будет пытаться разрешить эту зависимость несколько раз, при каждой сбое сборки, поскольку пакет, на который вы ссылаетесь, неизвестен.

Вы можете остановить метеор и удалить и заменить папку. Или вы можете скопировать и вставить папку. Второй способ предпочтительнее, потому что Meteor просто перестраивает все новые файлы, а не восстанавливает и пытается разрешить зависимость, используя Atmosphere.

+0

Ну, вы подробно объяснили Шаг 3., но есть ли другой, более элегантный способ? – Vladimir

+0

Я не уверен, что вы подразумеваете под «более элегантным». Вы можете просто наклеить старые файлы и добиться того же результата. – Ivan

+0

Я согласен, что это нормально для отрасли развития. Но в производстве это означало бы крах приложений для пользователей. – Vladimir

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