对于我的angular应用程序,我将从Node 14(使用NPM 6)切换到Node 16(使用NPM 8)。
这个应用程序有一个我们打包成NPM包的项目。
当在本地工作时,我们有一个脚本来构建这个项目(本地到dist/my-private-package-name
文件夹中),然后我们用npm install dist/my-private-package-name
安装这个本地构建的pkg。
在NPM6上,我们不必登录来安装这个本地pkg(duh,这是一个本地构建)。
然而,当我尝试在NPM 8中运行上述安装命令(在VSCode中)时,它要求我登录GitHub,这是愚蠢的,因为它是本地的。我在GitHub上甚至没有用户,因为我的公司不使用它,我们将私有NPM包存储到私有仓库。
即使我在终端中的VSCode外部运行该命令,它仍然失败,并显示以下消息:
npm ERR! code 128
npm ERR! An unknown git error occurred
npm ERR! command git --no-replace-objects ls-remote ssh://git@github.com/dist/my-private-package-name.git
npm ERR! git@github.com: Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/cn188854/.npm/_logs/2023-07-06T01_30_36_497Z-debug.log
字符串
肯定有一种方法可以在NPM 8中安装本地构建,对吗?
如果有关系的话,我们的包是有范围的。
1条答案
按热度按时间mgdq6dx11#
它似乎正在GitHub上搜索包,而不是您的本地目录。
使用
./
作为前缀使其成为相对路径可能会有所帮助。字符串