执行发包命令npm publish的时候报错处理

当执行npmpublish上传npm包时,如果package.json中的prepublish或prepare脚本导致错误,可以尝试移除这些脚本后再执行。对于包含域名的包,需确保registry设置为正确的私服地址,可通过npmconfigset或修改.npmrc文件来更改。prepublishOnly、prepack、prepare、postpack和publish是会自动执行的生命周期脚本。
摘要由CSDN通过智能技术生成

当执行发包命令npm publish上传包的时候,总是报错

'xxx' is not recognized as an internal or external command.

当npm publish命令的时候,如果在package.json中,有在script中定义prepublish或者prepare脚本的话,就会被立即执行,这些是用来必要的构建步骤,比如编译代码、打包等等。
所以我注意到package.json中带有脚本,先直接移除再执行命令就可以正常运行了,这些前置脚本并不是每一次都会执行,所以移除后也不用担心会哪里出问题。

{
	"prepublishOnly": "pinst --disable"
}

如果是遇到带有域名的这种包,还需要将配置好的registry地址改为目标私服地址,再重新执行npm publish即可,修改方式如下:

方式一(命令):
npm config set registry http://.....
方式二(直接修改文件配置的形式):
C:\Users\DELL\.npmrc

会自动执行的前置字段

prepublishOnly
prepack
prepare:npm install之后执行 和npm publish之前执行
postpack
publish
postpublish
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值