You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建NPM包时名称含斜杠报错 如何配置带作用域的斜杠格式包名

NPM包名带斜杠的配置方法

NPM 中唯一合法的带斜杠包名格式是作用域包(Scoped Modules),格式为 @作用域名/包名,你之前直接填写 Testname/testname2 报错是因为缺少作用域必备的@前缀,不符合命名规范。


常见问题原因

你之前运行初始化命令后package.json没有生成带作用域名的包名,大概率是两种情况:

  • 运行npm init --scope时没有传入完整的带@的作用域名
  • 初始化交互过程中没有确认使用生成的带作用域的默认包名,手动修改成了普通名称

正确配置步骤

  1. 先确认你的作用域名:作用域名是你NPM的个人用户名,或是你在NPM平台创建的组织名,必须以@开头,比如你的NPM用户名为king,作用域就是@king
  2. 两种配置方式任选即可:
    • 初始化时自动生成:运行命令 npm init --scope=@你的作用域名 -y,生成的package.json中name字段会自动设置为@你的作用域名/项目文件夹名
    • 手动修改:直接打开package.json文件,找到name字段,手动修改为符合规范的格式即可,示例:
      {
        "name": "@king/testname2",
        "version": "1.0.0"
      }
      
  3. 发布注意事项:公开作用域包发布时需要添加公开参数,命令为 npm publish --access public,否则默认会按私有包处理,需要开通NPM付费服务才能发布。

斜杠前后字段说明

  • 斜杠前面:带@前缀的作用域名,用来标记包的所属主体,避免和公共库的包名冲突
  • 斜杠后面:你自定义的包名称,符合普通NPM包命名规则即可

内容的提问来源于stack exchange,提问作者king

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 23:48:03