node: не удалось инициализировать ICU (проверьте параметры NODE_ICU_DATA или --icu-data-dir)
Я пытался обновить версию узла в нашей среде CI с узла 6 до узла 8. Я также обновил версию полного icu.
$NODE_ICU_DATA
установлен в /usr/lib/node_modules/full-icu
но все равно получите эту ошибку
node: could not initialize ICU (check NODE_ICU_DATA or --icu-data-dir parameters)
Любая идея, как это исправить?
Ответы
Ответ 1
Вам нужно запустить npm install
включая пакет full-icu
. Это шаг postinstall для full-icu
загрузки, который загружает соответствующие биты для текущего исполняемого узла. Обратите внимание, что несколько файлов могут отображаться в каталоге full-icu
, что ОК.
Ответ 2
Если вы уже установили full-icu
, но обновили узел между:
npm rebuild
проблему.
Ответ 3
Если вы хотите использовать Node.js с full-icu и Docker, вы можете использовать пример Dockerfile:
FROM node:lts-alpine
WORKDIR /icu
RUN npm init -y && npm install full-icu
ENV NODE_ICU_DATA=/icu/node_modules/full-icu
WORKDIR /project
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8080
CMD [ "node", "server.js" ]
Это работает для меня.
Ответ 4
Я получаю то же сообщение об ошибке при установке нового узла. Это совершенно новый компьютер с системой Windows 10 Pro версии 10.0.17763 Build 17763. Я попытался установить версию 10.16.0 LTS и версию 12.6.0 с сайта node.js. В обоих случаях у меня точно такая же ошибка, не имеет значения, запускаю ли я от имени администратора или обычного пользователя. Я не могу использовать решения, описанные выше, так как npm не будет работать (та же ошибка). Я понятия не имею, что делать дальше.
Я перенес вопрос здесь: Windows 10 - узел: не удалось инициализировать ICU (проверьте параметры NODE_ICU_DATA или --icu-data-dir) ошибка