npm 安装本地子文件夹 eperm symlink
npm install local subfolder eperm symlink
在 windows 计算机上,我有一个项目,我正在尝试在子文件夹中安装一个本地项目:
main
├──node_modules
├──otherProject
│ ├──node_modules
│ ├──index.js
│ └──package.json
├──package.json
└──something.anything
npm i ./otherProject -D
但我越来越
npm ERR! code EPERM
npm ERR! syscall symlink
npm ERR! path ..\..\otherProject
npm ERR! dest C:\something\something\main\node_modules\@somescope\package
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, symlink '..\..\otherProject' -> 'C:\something\something\main\node_modules\@somescope\package'
有很多类似的问题,但我发现的所有问题都归结为 -g
并且没有对全局文件夹的权限,或者只是到处都有错误的权限。我可以 npm i <pkg-name> -g
就好了,我什至有一些全局安装。这应该是本地的,需要更少的权限,而不是更多。发生了什么事,我该如何解决?
编辑:
运行 来自具有管理员权限的 shell 的命令不是可接受的解决方案。解释说,这是必需的,是。在后一种情况下,我必须使用一种解决方法,例如以私有包的形式上传到 npm,然后用正常的方式重新下载 npm i @scope/otherProject -D
。我看不出任何原因,为什么像这样的本地 link 需要管理员。
在 windows 中创建符号链接默认需要管理员权限。为什么会出现这种情况 not all too clear,但这可能是由于遗留原因,从未被清除。谢谢微软。
在 windows 10 中,由于 roughly 2016 您可以启用开发人员模式,以允许非管理员使用符号链接。
在 windows 计算机上,我有一个项目,我正在尝试在子文件夹中安装一个本地项目:
main
├──node_modules
├──otherProject
│ ├──node_modules
│ ├──index.js
│ └──package.json
├──package.json
└──something.anything
npm i ./otherProject -D
但我越来越
npm ERR! code EPERM
npm ERR! syscall symlink
npm ERR! path ..\..\otherProject
npm ERR! dest C:\something\something\main\node_modules\@somescope\package
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, symlink '..\..\otherProject' -> 'C:\something\something\main\node_modules\@somescope\package'
有很多类似的问题,但我发现的所有问题都归结为 -g
并且没有对全局文件夹的权限,或者只是到处都有错误的权限。我可以 npm i <pkg-name> -g
就好了,我什至有一些全局安装。这应该是本地的,需要更少的权限,而不是更多。发生了什么事,我该如何解决?
编辑:
运行 来自具有管理员权限的 shell 的命令不是可接受的解决方案。解释说,这是必需的,是。在后一种情况下,我必须使用一种解决方法,例如以私有包的形式上传到 npm,然后用正常的方式重新下载 npm i @scope/otherProject -D
。我看不出任何原因,为什么像这样的本地 link 需要管理员。
在 windows 中创建符号链接默认需要管理员权限。为什么会出现这种情况 not all too clear,但这可能是由于遗留原因,从未被清除。谢谢微软。
在 windows 10 中,由于 roughly 2016 您可以启用开发人员模式,以允许非管理员使用符号链接。