gpt4 book ai didi

node.js - MacOS/Linux 和 Windows 上的 node_modules 文件夹的访问权限

转载 作者:太空宇宙 更新时间:2023-11-04 01:47:43 25 4
gpt4 key购买 nike

我正在 Mac 机器上开发一些 NodeJS 应用程序。出于测试目的,我使用 Parallels 来获取虚拟 Windows 计算机 (win 10)。

如果我在 Mac 上为项目运行 npm install,则无法在 Windows 计算机上运行该项目,因为我遇到了 node_modules 文件夹访问被拒绝错误。

所以我删除了 Windows 计算机上运行 npm install 的文件夹。这样我就可以运行该应用程序了。但后来在我的 mac 机器上我确实得到了例如sh:/Users/project/node_modules/.bin/nodemon:权限被拒绝

如何设置对 node_modules 目录的正确访问权限以使应用程序在两个操作系统上运行?

最佳答案

这是因为在 macOS 中编译的二进制文件 (.bin) 不一定也适用于 Windows。对于您的场景,请使用 YARN。因为YARN提供离线安装。

引用链接:https://yarnpkg.com/blog/2016/11/24/offline-mirror/

在您的任一系统中安装 YARN。

  1. npm 安装 yarn
  2. 在 cmd 或终端的项目文件夹中,只需输入 yarn
    -Yarn 将开始解析您的包。
  3. 完成后,通过执行以下命令创建 .yarnrc 文件(Windows 和 macOS 相同)。

    yarn 配置设置yarn-offline-mirror ./npm-packages-offline-cache

    yarn 配置设置yarn-offline-mirror-pruning true

  4. 将在您的主目录中创建 .yarnrc 文件 (macOS => ~/.yarnrc || windows => C:\{user}\.yarnrc)。

  5. 将该文件移动到您的项目中,使其仅特定于您的项目。

  6. 现在执行yarn install -> 结果在node_modules文件夹和yarn.lock文件中。另请注意,在文件夹 npm-packages-offline-cache 下的主目录中,您将拥有 tarball 格式的所有依赖项。

  7. 您所要做的就是将此 tarball 目录和yarn.lock提交到两个环境通用的存储库,通过重复相同的 1-5 个步骤在其他环境中设置yarn。

  8. 最后运行yarn install -offline,您将加载依赖项。

长话短说!你不能仅仅复制粘贴node_modules并让它在windows和unix之间工作。

希望对你有帮助..

关于node.js - MacOS/Linux 和 Windows 上的 node_modules 文件夹的访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50845898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com