如何解决verdaccio 发布新包
OS OpenSuse 15.2 我在将新包发布到本地 npm 代理时遇到问题
Verdaccio 5.1.0 版
-
我已经从 npm 安装了 verdaccio
-
已添加用户 verdaccio:
id verdaccio uid=1001(verdaccio) gid=100(users) группы=100(users)
-
添加到配置存储路径参数:
storage: /npm/storage # path to a directory with plugins to include plugins: /npm/plugins
-
运行它
warn --- config file - /home/verdaccio/.config/verdaccio/config.yaml warn --- Plugin successfully loaded: verdaccio-htpasswd warn --- Plugin successfully loaded: verdaccio-audit warn --- http address - http://172.16.4.76:1234/ - verdaccio/5.1.0
-
添加npm用户并设置npm manager注册本地代理
Username: verdaccio Password: Email: (this IS public) Logged in as verdaccio on http://172.16.4.76:1234/.
然后我 cd 到 js 模块并执行:
```# npm publish --registry http://172.16.4.76:1234/
出现错误: (npm)
```npm notice
npm notice ? easyrabbit@1.0.0
npm notice === Tarball Contents ===
npm notice 418B package.json
npm notice 1B README.md
npm notice 1.5kB class.easyrabbit.mjs
npm notice === Tarball Details ===
npm notice name: easyrabbit
npm notice version: 1.0.0
npm notice package size: 938 B
npm notice unpacked size: 1.9 kB
npm notice shasum: 9f758fe3b7076efb131482242bccab92e6d12218
npm notice integrity: sha512-rFP+zMQlRFZhB[...]MQmtD0g1Y6u9Q==
npm notice total files: 3
npm notice
npm ERR! code E404
npm ERR! 404 Not Found - PUT http://172.16.4.76:1234/easyrabbit - no such package available
npm ERR! 404
npm ERR! 404 'easyrabbit@1.0.0' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball,folder,http url,or git url.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-06-05T11_27_47_111Z-debug.log
在verdaccio方面:
```
http --- 172.16.4.76 requested 'GET /npm'
(node:12088) [DEP0106] DeprecationWarning: crypto.createDecipher is deprecated.
info --- auth/allow_action: access granted to: undefined
info --- allowed access for npm
info --- making request: 'GET https://registry.npmjs.org/npm'
http --- 200,req: 'GET https://registry.npmjs.org/npm' (streaming)
http --- 200,req: 'GET https://registry.npmjs.org/npm',bytes: 0/15211570
http --- 200,user: verdaccio(172.16.4.76),req: 'GET /npm',bytes: 0/4171881
http --- 172.16.4.76 requested 'GET /npm'
info --- auth/allow_action: access granted to: undefined
info --- allowed access for npm
http --- 172.16.4.76 requested 'GET /-/whoami'
http --- 304,req: 'GET /-/whoami',bytes: 0/0
http --- 200,bytes: 0/4171881
http --- 172.16.4.76 requested 'POST /-/v1/login'
http --- 404,req: 'POST /-/v1/login',bytes: 18/150
http --- 172.16.4.76 requested 'PUT /-/user/org.couchdb.user:verdaccio'
http --- 201,req: 'PUT
/-/user/org.couchdb.user:verdaccio',bytes: 134/110
http --- 192.168.3.105 requested 'GET /'
http --- 304,user: null(192.168.3.105),req: 'GET /',bytes: 0/0
http --- 192.168.3.105 requested 'GET /-/verdaccio/packages'
http --- 304,req: 'GET /-/verdaccio/packages',bytes: 0/0
http --- 172.16.4.76 requested 'PUT /easyrabbit'
info --- auth/allow_action: access granted to: undefined
info --- verdaccio is allowed publish for easyrabbit
info --- auth/allow_action: access granted to: undefined
info --- verdaccio allowed unpublish for easyrabbit
http --- 404,req: 'PUT /easyrabbit',error: no such
package available
我做错了什么?
解决方法
两天前我遇到了这个错误。我尝试了一切,甚至更新到 verdaccio 5.1。
我的解决方案:在我的 package.json 中,有一个字段“deprecated”设置为 false。我不知道它是如何到达那里的,但是一旦我将其删除,我就可以再次发布。检查您的 package.json 并删除一些您不需要的字段,也许您会很幸运。服务器上的 Verdaccio 错误消息未提及任何有关格式错误的 package.json 的内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。