我尝试将CI环境中的节点版本从节点6升级到节点8.我也更新了完整版本。
$NODE_ICU_DATA
设置为/usr/lib/node_modules/full-icu
但仍然会收到此错误
node: could not initialize ICU (check NODE_ICU_DATA or --icu-data-dir parameters)
任何想法,如何解决这个问题?
答案 0 :(得分:8)
如果您已经安装了full-icu
,但是在以下两个之间进行了升级:
npm rebuild
确实解决了该问题。
答案 1 :(得分:3)
您需要运行npm install
包括full-icu
包。它是full-icu
的postinstall步骤,它下载当前正在执行的节点的相应位。请注意,多个文件可能会显示在full-icu
目录中,这样就可以了。
答案 2 :(得分:0)
如果要将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" ]
它对我有用。