Убедитесь, что вы развертываете правильную версию файла .dat
в каталог, определенный NODE_ICU_DATA
. В моем случае правильный файл был icudt62l.dat
при использовании времени выполнения nodejs10.x
для моих лямбд. Если вы не развертываете node_modules
как часть своей лямбды, вы можете взять правильный файл .dat
и развернуть его.
Я столкнулся с тем же сообщением об ошибке при обновлении версии времени выполнения некоторых старых лямбд с nodejs6.10
до nodejs10.x
. В моем случае файл icudt58l.dat
(совместимый с nodejs6.10
) был развернут в корне проекта, а значение NODE_ICU_DATA
было .
(т. Е. Каталог, в котором выполняется моя лямбда, эквивалентный /var/task/
).
Чтобы получить совместимый файл .dat
, я переустановил пакет full-icu
, используя версию узла, используемую лямбдами:
npx -p node@10.x npm i full-icu
Важно, чтобы версия файла .dat
была правильной для той версии времени выполнения, которую используют ваши лямбды . Первоначально я сделал ошибку, просто запустив npm i full-icu
с использованием версии узла 10.0
, но это установило неверную версию файла .dat
, и я только что получил то же сообщение об ошибке снова.
Наконец, я скопировал файл node_modules/full-icu/icudt62l.dat
в корень проекта и удалил старый icudt58l.dat
так, чтобы он оказался в /var/task/
, где лямбда может найти его, когда NODE_ICU_DATA=.
.