【问题标题】:Meteor mup error fbjs invariantMeteor mup 错误 fbjs 不变量
【发布时间】:2016-09-14 03:54:06
【问题描述】:

我正在使用 mup 进行部署,在我添加 reactrouter:react-router-ssr meteor 包之前一切都很好。我可以在本地运行它,但是我在部署时收到以下错误:

-----------------------------------STDERR-----------------------------------
    pproximately three times slower than the native implementation.
    In order to use the native implementation instead, run

      meteor npm install --save bcrypt

    in the root directory of your application.
    /bundle/bundle/programs/server/node_modules/fibers/future.js:280
                            throw(ex);
                            ^

    Error: Cannot find module 'fbjs/lib/invariant'
        at Function.Module._resolveFilename (module.js:325:15)
        at Function.Module._load (module.js:276:25)
        at Module.require (module.js:353:17)
        at require (internal/module.js:12:17)
        at Object.<anonymous> (/bundle/bundle/programs/server/npm/node_modules/react/lib/PooledClass.js:14:17)
        at Module._compile (module.js:409:26)
        at Object.Module._extensions..js (module.js:416:10)
        at Module.load (module.js:343:32)
        at Module.Mp.load (/bundle/bundle/programs/server/npm/node_modules/meteor/babel-compiler/node_modules/reify/node/runtime.js:16:23)
        at Function.Module._load (module.js:300:12)

    => Redeploying previous version of the app

    -----------------------------------STDOUT-----------------------------------

    To see more logs type 'mup logs --tail=50'

    ----------------------------------------------------------------------------

预计会出现 bycrypt 错误,因为 npm 版本显然与我正在使用的 docker 映像不兼容 abernix/meteord:base 并且我在本地遇到了类似的问题,它运行良好并且部署也很好。当我添加 react-router-ssr 包时发生错误,所以我认为我得到的 fbjs/lib/invariant 错误是由于这个原因。

我的 mup.js 是:

module.exports = {
  servers: {
    one: {
      host: '54.69.x.x',
      username: 'ubuntu',
      pem: "/Users/me/.ssh/meteor.pem"
    }
  },

  meteor: {
    name: 'App',
    path: '/Users/me/development/meteor',
    servers: {
      one: {}
    },
    buildOptions: {
      serverOnly: true,
      debug: true
    },
    enableUploadProgressBar: true,
    env: {
      ROOT_URL: 'http://54.69.x.x',
      MONGO_URL: 'mongodb://user:pass@mlab.com:39685/production'
    },

    dockerImage: 'abernix/meteord:base',
    deployCheckWaitTime: 60
  },

  mongo: {
    oplog: true,
    port: 27017,
    servers: {
      one: {},
    },
  },
};

感谢您提供的任何帮助。顺便说一句,如果有人知道如何强制 mup 连接到我的 mongo-url 而不是在本地构建 mongo,那也太棒了,因为 setupMongo:false 的位置对于 mup 与 mupx 似乎不同。谢谢!!

编辑:如果我手动将 fbjs 添加到 package.json 存储库,该错误就会消失,但我会得到一个新错误:

    Npm.require (/bundle/bundle/programs/server/boot.js:198:17)
    at options.fallback (packages/modules-runtime/modules-runtime.js:21:1)
    at Module.require (packages/modules-runtime/.npm/package/node_modules/install/install.js:88:1)
    at Module.Mp.import (/bundle/bundle/programs/server/npm/node_modules/meteor/modules/node_modules/reify/lib/runtime.js:70:16)
    at meteorInstall.imports.ui.components.blogs.blog.js (/bundle/bundle/programs/server/app/app.js:3878:866)
    at fileEvaluate (packages/modules-runtime/.npm/package/node_modules/install/install.js:153:1)
    at Module.require (packages/modules-runtime/.npm/package/node_modules/install/install.js:82:1)
    at Module.Mp.import (/bundle/bundle/programs/server/npm/node_modules/meteor/modules/node_modules/reify/lib/runtime.js:70:16)
    at meteorInstall.imports.ui.layouts.blogs.blogsList.js (imports/ui/layouts/application/app.js:8:8)
    at fileEvaluate (packages/modules-runtime/.npm/package/node_modules/install/install.js:153:1)

【问题讨论】:

    标签: mongodb meteor reactjs docker react-router


    【解决方案1】:

    我通过手动添加 fbjs 和 reify 到我的 package.json 文件解决了这两个问题。它对npm install --save fbjsnpm install --save reify 不起作用,我必须手动将两者都添加到 package.json 中,然后才能正确部署。

    【讨论】:

      猜你喜欢
      • 2017-08-05
      • 2018-05-08
      • 2015-11-01
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      • 2014-07-03
      • 2015-02-28
      • 1970-01-01
      相关资源
      最近更新 更多