Не удается найти модуль "./mergeConfig" при работе на Heroku - PullRequest
0 голосов
/ 04 июля 2019

У меня есть приложение узла, которое работает нормально, когда выполняется на моей машине через node my_application.js.

Однако, если нажать на heroku и выполнить его через heroku run node my_application.js или с помощью планировщика, то я получаю вот этоошибка:

internal/modules/cjs/loader.js:638
throw err;
^

Error: Cannot find module './mergeConfig'
    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:690:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/app/node_modules/axios/lib/core/Axios.js:7:19)
    at Module._compile (internal/modules/cjs/loader.js:776:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787: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)

Я использую узел v10.16.0 и npm v6.9.0 как локально, так и на Heroku, так что я действительно не знаю, что может быть причиной этой проблемы, и поиск в ней не помогне поможет.

Есть какие-нибудь идеи по поводу этого mergeConfig модуля, который, кажется, отсутствует в моей среде heroku, но отсутствует в моей локальной среде?

Редактировать: это мой package.json:

{
  "name": "[REDACTED]",
  "version": "1.0.0",
  "description": "[REDACTED]",
  "author": "",
  "license": "ISC",
  "dependencies": {
    "axios": "^0.19.0",
    "bluebird": "^3.5.3",
    "body-parser": "^1.18.3",
    "dateformat": "^3.0.3",
    "express": "^4.16.4",
    "form-data": "^2.3.3",
    "http-to-curl": "^1.4.2",
    "jest": "^24.8.0",
    "qs": "^6.6.0",
    "querystring": "^0.2.0",
    "redis": "^2.8.0",
    "simple-oauth2": "^2.2.1"
  }
}

Ответы [ 2 ]

0 голосов
/ 06 июля 2019

У меня была такая же проблема. './mergeConfig' - это файл внутри модуля de axios.

Путь: node_modules / axios / core / mergeConfig.js

По какой-то причине у герои возникла проблема с этим файлом. Я решил это, заменив axios на запрос.

0 голосов
/ 05 июля 2019

Попробуйте явно добавить отсутствующий модуль в зависимости в package.json:

 "dependencies": {
       ...
       "merge-config" :"2.0.0"
       ...
}

Я думаю, что это работает в вашей локальной среде, потому что у вас установлен модуль глобально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...