首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >npm显示版本抛出错误ERR_STRING_TOO_LONG不能创建超过0x1fffffe8字符的字符串。

npm显示版本抛出错误ERR_STRING_TOO_LONG不能创建超过0x1fffffe8字符的字符串。
EN

Stack Overflow用户
提问于 2022-10-20 15:08:43
回答 1查看 151关注 0票数 0

我有一个cron,它将服务器上安装的npm package版本与私有注册表(verdaccio)上的最新版本进行比较,并相应地更新包。

代码语言:javascript
运行
复制
REMOTE_VERSION=$(npm show ${PACKAGE_NAME} version)
LOCAL_VERSION=$(node -pe "require('./package.json').version")
...

除了命令npm show ${PACKAGE_NAME} version抛出错误的一台服务器之外,这个cron在我的所有服务器上运行都没有问题:

代码语言:javascript
运行
复制
npm ERR! code ERR_STRING_TOO_LONG
npm ERR! Cannot create a string longer than 0x1fffffe8 characters

我读过here,0x1fffe8正好是512 is,但是该命令的响应仅为4/5个字符(比如"v0.1.50"),所以它能超过这个限制似乎很奇怪。此外,相同的命令(对于相同的包)在本地服务器和所有其他服务器中运行平稳。

这是一些规格。服务器的

代码语言:javascript
运行
复制
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"

Node v14.17.3
npm v6.14.13
nvm v0.38.0
pm2 v5.1.0
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-27 18:45:44

升级到node 16.18.0解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74142215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档