簡體   English   中英

無法在 AWS/nodejs 上運行自定義模塊。 退出錯誤:找不到模塊

[英]Can't run custom module on AWS/nodejs. Exits with error: Cannot find module

我想切換到 AWS elastic beanstalk 上的 parse-server 模塊的一個分支,但是無論我嘗試什么,當服務器嘗試啟動時都會出現此錯誤:

Error: Cannot find module 'parse-server'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/var/app/current/index.js:64:21)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)

原始模塊可以正常工作:

  • 在 package.json 中:
     "parse-server": "3.10.0",
  • 但這些都不起作用:
     "parse-server": "https://github.com/andrewking0207/parse-server.git#appleAuth",
     "parse-server": "andrewking0207/parse-server.git#appleAuth",

當我通過 ssh 連接到 ec2 實例時,該模塊安裝在節點模塊內。 我在這里錯過了什么? 在我的機器上本地一切正常。

您不能直接從 GitHub fork 安裝,因為它沒有在構建過程中創建的lib文件夾。 不過有一個解決方法:

1 - 將您的 fork 克隆到您的機器 2 - 從 .gitignore 文件中刪除 lib 文件夾 3 - 運行npm install 4 - 運行npm build 5 - 將更改提交到本地 git 6 - 將提交推送到 GitHub 上的遠程堡壘分支

然后您可以嘗試再次安裝它,它應該可以工作。 我只是想說明這是一種解決方法,而不是使用 Parse Server 的推薦方法。 如果您通過使用自己的叉子來解釋您想要實現的目標,我可以嘗試就“正確”的完成方式提出建議。

暫無
暫無

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

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