我对"发布NPM包GitHub操作"有问题

name: Publish package on NPM

on:
  release:
    types: [created]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2
        with:
          node-version: 16.x
          registry-url: https://registry.npmjs.org/
      - run: yarn
      - run: yarn build
      - run: npm publish --access=public
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

我有这样一个错误:

npm ERR! code EPRIVATE. npm ERR! This package has been marked as private. 一百零二

但它不是私有的,它在VSCode中通过命令工作,我只输入了"npm发布--访问=公共",那么为什么它不能与我的GitHub操作一起工作呢?看起来和我手动做的事情一样

谢谢!

private: false加到package.jsonpackage.json中删除private属性 删除package-lock.jsonnpm i

推荐答案

您收到的错误是因为:

如果在您的Package.json中设置了"Private":true,那么NPM将拒绝>;发布它.

Https://docs.npmjs.com/cli/v7/configuring-npm/package-json#private

package.json中可能没有private字段,但仍可能出现以下错误:

注意:在NPM PUBLISH命令上使用--ACCESS标志将仅在包的初始发布时设置包访问级别.使用--Access标志的任何后续NPM PUBLISH命令都不会对访问级别产生影响.要在初始发布后更改访问级别,请使用NPM访问.

Https://docs.npmjs.com/cli/v8/commands/npm-publish#access

这意味着如果您之前使用不同的访问权限发布了包 级别(如restricted,这是限定作用域的包的默认设置,即以@开头的包),则需要在try 发布为public之前更改访问级别.


一方面,您需要更新actions/checkoutactions/setup-node才能使用Node.js v16.

steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16.x
          registry-url: https://registry.npmjs.org/

Reactjs相关问答推荐

重定向React路由中没有根文件夹的所有路径匹配

有正确的方法来设置我的金牛座应用程序的图标吗?

在Reaction中更新状态时,我将变得未定义

如何使用皮金贴图在Reactjs中制作 map 上的点之间的线的动画?

在Map()完成React.js中的多个垃圾API请求后执行函数

React-React中是否完全支持基于类的组件?

定位数组中的一项(React、useState)

列表中的每个子项都应该有一个唯一的keyprops .在react 应用程序中

我可以同时使用 Gatsby 和 NEXT.JS 吗?

useEffect 内的 onClick 和 addEventListener 之间的 click 事件顺序差异

显示我是否加入聊天应用程序时出现问题

使用jest如何覆盖对象的模拟?我正在使用`jest.mock()`来模拟对象,并希望 for each 测试用例覆盖模拟.

计数器递增 2 而不是 1

React 测试库包装器组件

如何使用样式化函数为 TextField 的输入组件设置样式

来自一个自定义 React Native 组件的样式从另一个自定义组件移除样式

如何从 React Redux store 中删除特定项目?

如何将我的 ID 值传递给下一个组件?

Cypress ,重试不再附加到 DOM 的元素

为什么重新渲染不会影响 setTimeout 的计数?