我已经设置了一个Nexus(2.10.0)NPM存储库,并管理对该存储库具有完全访问权限的用户。
通过设置" _auth"和" always-auth"在我的本地.npmrc中的param,npm工件的发布和读取工作正常。但是,如果我尝试取消发布或弃用npm工件,我仍会收到错误" ...此请求需要auth凭据。运行npm login
并重复请求..."。
从nexus npm存储库中删除工件的首选方法是什么?
THX, 大卫
答案 0 :(得分:3)
目前不支持取消发布。详情请见https://issues.sonatype.org/browse/NEXUS-6892
另请注意,从问题中链接的npm文档本身可以看出,使用取消发布不是一种好习惯。
答案 1 :(得分:3)
不幸的是,Nexus 2.11不支持npm unpublish
或npm deprecate
。
如果目标是让以前发布的npm-packages版本无法访问:
您可以通过从Nexus服务器上的.../nexus/storage/<your_npm_repo>/<your_package>/-/
手动删除tarball并创建scheduled task到重建托管的npm元数据&#39; 来删除Nexus中的软件包:
托管存储库的npm元数据 可以根据存储中找到的组件重建 托管存储库。该任务可以作为案例中的恢复工具 npm元数据数据库损坏或组件存储的地方 手动创建或通过某些外部过程创建,例如一个rsync 复制。
这对于将旧版本的软件包注入npm-repo非常有用。 (要获取这些tar包,请使用npm pack
。)