簡體   English   中英

MacOS / Linux和Windows上的node_modules文件夾的訪問權限

[英]Access rights for node_modules folder at MacOS/Linux and Windows

我正在Mac機上開發一些nodeJS應用程序。 出於測試目的,我使用Parallels來獲取虛擬Windows機器(win 10)。

如果我在Mac上為某個項目運行npm install ,則無法在Windows計算機上運行該項目,因為我收到了node_modules文件夾的access denied錯誤。

所以我刪除了在Windows機器上運行npm install的文件夾。 這樣我就可以運行該應用程序了。 但是然后在我的Mac機器上,我確實得到了sh: /Users/project/node_modules/.bin/nodemon: Permission denied

如何設置對node_modules目錄的正確訪問權限,以使該應用程序在兩個OS上運行?

這是因為在macOS中編譯的二進制文件(.bin)不一定也必須與Windows一起使用。 對於您的方案,請使用YARN。 因為YARN提供離線安裝。

參考鏈接https : //yarnpkg.com/blog/2016/11/24/offline-mirror/

在任何一個系統中安裝YARN。

  1. npm install yarn
  2. 在cmd或終端中的項目文件夾中,只需鍵入yarn
    -Yarn將開始解析您的軟件包。
  3. 完成后,通過執行以下命令(對於Windows和macOS都相同)來創建.yarnrc文件。

    yarn config set yarn-offline-mirror ./npm-packages-offline-cache

    yarn config set yarn-offline-mirror-pruning true

  4. 將在您的主目錄中創建一個.yarnrc文件( macOS => ~/.yarnrc || windows => C:\\{user}\\.yarnrc )。

  5. 將該文件移到您的項目中,使其僅針對您的項目。

  6. 現在執行一個yarn install -> node_modules文件夾中的node_modules和一個yarn.lock文件。 還要注意,在主目錄中的文件夾npm-packages-offline-cache您將具有tarball格式的所有依賴項。

  7. 您要做的就是將這個tarball目錄和yarn.lock提交到這兩個環境通用的存儲庫中,通過重復相同的1-5步驟在其他環境中設置yarn。

  8. 最后運行yarn install -offline,您將加載依賴項。

長話短說! 您不能只復制粘貼node_modules並使它在Windows和Unix之間工作。

希望對您有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM