首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决弹性豆杆的ERR_MODULE_NOT_FOUND误差?

如何解决弹性豆杆的ERR_MODULE_NOT_FOUND误差?
EN

Stack Overflow用户
提问于 2022-09-06 10:27:59
回答 1查看 158关注 0票数 0

我正在尝试开发一个带有es6风格的express。在我的IDE (即win10 )上测试时,一切都很好。然后我部署到EBS进行生产环境测试,它给出了ERR_MODULE_NOT_FOUND错误。

npm库给出的所有错误,如cors、bcrypt、随机字符串等,但并不是所有的库都有问题。

当我在EBS上运行一个es6程序时,会不会有什么不同,因为EBS正在使用linux作为操作系统。

我该怎么解决呢?

以下是完整的错误消息:

9月6日10:14:49 ip-172-31-26-145 web:>节点www.js

9月6日10:14:49 ip-172-31-26-145网页:ip/process/esm_loader.js:74

9月6日10:14:49 ip-172-31-26-145网页: internalBinding('errors').triggerUncaughtException(

9月6日10:14:49 ip-172-31-26-145网页:^

9月6日10:14:49 ip-172-31-26-145 web: ERR_MODULE_NOT_FOUND:无法找到从/var/app/current/www.js导入的包“cors”

9月6日10:14:49 ip-172-31-26-145网页: at new NodeError (内部/errors.js:322:7)

9月6日10:14:49 ip-172-31-26-145网页: at packageResolve (内部/模块/esm/rupve.js:732:9)

9月6日10:14:49 ip-172-31-26-145网页: at moduleResolve (内部/模块/esm/rupve.js:773:18)

9月6日10:14:49 ip-172-31-26-145网页: at Loader.defaultResolve as _resolve

9月6日10:14:49 ip-172-31-26-145网页: at Loader.resolve (内部/模块/esm/loader.js:89:40)

9月6日10:14:49 ip-172-31-26-145网页: at Loader.getModuleJob (内部/模块/esm/loader.js:242:28)

9月6日10:14:49 ip-172-31-26-145网页: at ModuleWrap.(内部/模块/无害环境管理/模块_JOB.js:76:40)

9月6日10:14:49 ip-172-31-26-145网页: at link (内部/模块/esm/模块_JOB.js:75:36)

9月6日10:14:49 ip-172-31-26-145 web:代码:'ERR_MODULE_NOT_FOUND‘

9月6日10:14:49 ip-172-31-26-145 web:}

9月6日10:14:49 ip-172-31-26-145网页: npm错误!代码ELIFECYCLE

9月6日10:14:49 ip-172-31-26-145网页: npm错误!错误号1

9月6日10:14:49 ip-172-31-26-145网页: npm错误!时间表-api@0.0.0开始:node www.js

9月6日10:14:49 ip-172-31-26-145网页: npm错误!退出状态1

9月6日10:14:49 ip-172-31-26-145网页: npm错误!

9月6日10:14:49 ip-172-31-26-145网页: npm错误!在时间表-api@0.0.0启动脚本处失败。

9月6日10:14:49 ip-172-31-26-145网页: npm错误!这可能不是npm的问题。上面可能还有额外的日志输出。

9月6日10:14:49 ip-172-31-26-145网页: npm错误!可以在以下位置找到此运行的完整日志:

9月6日10:14:49 ip-172-31-26-145 web: npm ERR!/home/webapp/.npm/_logs/2022-09-06T10_14_49_923Z-debug.log

我就是这样导入库的:

代码语言:javascript
复制
import express from "express";
import path from "path";
import cookieParser from "cookie-parser";
import logger from "morgan";
import { fileURLToPath } from "url";
import passport from "passport";
import passportConfig from "./modules/passport.js";
import Debug from "debug";
import Cors from "cors";

以下是我的完整package.json:

代码语言:javascript
复制
{
  "name": "test-api",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node app.js",
    "dev": "nodemon app.js"
  },
  "dependencies": {
    "bcrypt": "^5.0.1",
    "big.js": "^6.2.1",
    "cookie-parser": "~1.4.4",
    "cors": "^2.8.5",
    "debug": "^2.6.9",
    "dotenv": "^16.0.1",
    "express": "^4.17.1",
    "https": "^1.0.0",
    "jsonwebtoken": "^8.5.1",
    "knex": "^2.0.0",
    "lodash": "^4.17.21",
    "module-alias": "^2.2.2",
    "moment": "^2.29.3",
    "moment-timezone": "^0.5.34",
    "morgan": "~1.9.1",
    "nodemon": "^2.0.16",
    "passport": "^0.6.0",
    "passport-jwt": "^4.0.0",
    "passport-local": "^1.0.0",
    "pdfmake": "^0.2.5",
    "randomstring": "^1.2.2",
    "tedious": "^14.5.0",
    "uuid": "^8.3.2"
  }
}
EN

回答 1

Stack Overflow用户

发布于 2022-09-08 09:03:12

我会尝试在上传到EB的构建中将npm安装添加到.ebextension文件夹中。

PHP应用程序的一个示例可以在这里找到:https://github.com/rennokki/laravel-aws-eb/blob/36df929fbd223a7feca0a6bdfd5c27f1a0aca8d6/.ebextensions/01_deploy.config#L26

您可以先上传一个完全安装的版本来检查这是否是问题所在。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73620474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档