【问题标题】:You cannot publish over the previously published versions您不能在以前发布的版本上发布
【发布时间】:2019-05-12 21:05:09
【问题描述】:

我使用 npm version minor 更新了我的包,从 0.4.0 升级到 0.5.0,package.jsonpackage-lock.json 都反映了这一点。但是,当我运行 npm publish 命令时,它会说:

您无法在以前发布的版本之上发布:0.4.0

我需要在其他地方更新 semver 才能发布吗?

【问题讨论】:

    标签: npm npm-publish


    【解决方案1】:

    在您的 package.json 中,可能存在一个 publish 脚本命令,其内容为 npm publish ...,如果有,请删除或重命名您的 package.json 脚本中的 publish 命令。

    以下面的代码为例,这个scripts.publish命令会再次被npm publish --access public触发,递归地运行

    "scripts": {
     "publish": "npm publish --access public" // this was being triggered by running `npm publish`
    },
    

    【讨论】:

    • 花了几个小时尝试了许多解决方案。这个答案解决了这个问题。谢谢
    【解决方案2】:

    当已经有相同版本的 npm 模块时会发生这种情况。

    我们需要增加 npm 模块版本并再次发布。

    【讨论】:

      【解决方案3】:

      npm version [patch|minor|major|<version_no>]应该先升级版本然后

      npm publish 公开可见添加--access public

      应该这样做。

      【讨论】:

        【解决方案4】:

        这对我有帮助:

        打开命令提示符并执行以下步骤。

        1. npm version <new_Version_No>
        2. npm publish

        【讨论】:

        • 有没有办法增强我的package.json,使其始终为特定依赖项安装 npm 上可用的最新版本?类似"black-duck-lib": "_latest_",。我不想为这个小事打开一个单独的问题。请帮忙。
        【解决方案5】:

        由于某种原因,当我试图将我的版本从 0.0.0 增加到 0.0.1 时,我遇到了这个错误。但是,从 0.0.0 更新到 0.1.0 效果很好。

        【讨论】:

          【解决方案6】:

          看看你的package.jsonversion 是否实际设置为 0.5.0? 如果不考虑在那里手动设置。 NPM 告诉你你已经有一个版本 0.4.0 并且它不能再次发布它。所以它似乎认为它仍然在0.4.0

          【讨论】:

            【解决方案7】:

            您可以尝试以下方法:

            1. Update npm version to latest.
            2. cd 进入父文件夹(包含package.json 的文件夹,即cd 进入A,如果您的文件是A/B/package.json),然后运行命令npm publish B

            两者都解决了我的问题。

            【讨论】:

              猜你喜欢
              • 2014-03-24
              • 2012-12-20
              • 1970-01-01
              • 2017-04-21
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2016-11-30
              相关资源
              最近更新 更多