Meteor Up deploy failed but app runs fine in development

会有一股神秘感。 提交于 2019-12-01 23:21:57

问题


I am testing deployment of my first Meteor app, and thought using Meteor Up. After fiddling around much, I managed to run mup setup without any errors and everything seems fine.

However, running mup deploy fails :

$ mup deploy
Building App Bundle Locally
Errors prevented bundling:
While minifying app code:
eval at <anonymous>
(/home/yanick/.meteor/packages/standard-minifier-js/.1.2.1.s85ddv++os+web.browser+web.cordova/plugin.minifyStdJS.os/npm/node_modules/meteor/minifier-js/node_modules/uglify-js/tools/node.js:28:1),
<anonymous>:1545:18: SyntaxError: Unexpected token: name (Converter)
at new JS_Parse_Error (eval at <anonymous>
(/home/yanick/.meteor/packages/standard-minifier-js/.1.2.1.s85ddv++os+web.browser+web.cordova/plugin.minifyStdJS.os/npm/node_modules/meteor/minifier-js/node_modules/uglify-js/tools/node.js:28:1),
<anonymous>:1545:18) at js_error (eval at <anonymous>
...

The faulty file seems to be a Converter.js, but this file is nothing fancy and simply exports some JSON object :

import Converter from 'universal-converter';

export default Converter;

export const DEFAULT_UNIT = 'unit';

export const Units = {
  'unit': {
    'type': 'unit',
    'name': 'unit'
  },
  'inch': {
    'type': 'distance',
    'name': 'inch',
    'label': 'in'
  },
  'inch2': {
    'type': 'area',
    'name': 'square inch',
    'label': 'in²'
  },
  'foot': {
    'type': 'distance',
    'name': 'foot',
    'label': 'ft'
  },
  'foot2': {
    'type': 'area',
    'name': 'square foot',
    'label': 'ft²'
  },
  'yard': {
    'type': 'distance',
    'name': 'yard',
    'label': 'yd'
  },
  'yard2': {
    'type': 'area',
    'name': 'square yard',
    'label': 'yd²'
  },
  'cm': {
    'type': 'distance',
    'name': 'centimeter',
    'label': 'cm'
  },
  'm': {
    'type': 'distance',
    'name': 'meter',
    'label': 'm'
  },
  'g': {
    'type': 'mass',
    'name': 'gram',
    'label': 'g'
  },
  'kg': {
    'type': 'mass',
    'name': 'kilogram',
    'label': 'kg'
  },
  'lb' : {
    'type': 'mass',
    'name': 'pound',
    'label': 'lb'
  },
  'oz': {
    'type': 'mass',
    'name': 'once [France]',
    'label': 'oz'
  },
  'liter': {
    'type': 'volume',
    'name': 'liter',
    'label': 'L'
  },
  'gal': {
    'type': 'volume',
    'name': 'gallon [US, liquid]',
    'label': 'Gal'
  },
  'oz_v': {
    'type': 'volume',
    'name': 'ounce [UK, liquid]',
    'label': 'oz'
  }
};

Why is meteor running fine, but creating a bundle of the application fail?


Update 1

I have tried refactoring my app directories, moving the build around, nothing changes. This command : meteor build ../output (where the path is outside the root folder of my project) fails as described above.


回答1:


Please take a look to the related issue on Github. In this page, @Abernix found a temporary solution:

at root of your project, do theses command line:

meteor remove standard-minifier-js

meteor add abernix:standard-minifier-js@1.2.2

And then, try again to build.

WARNING: As @Abernix said:

Please don't consider this as a long-term solution (as it will be better if you remain on the official package), but more of a survey to see how their progress is is going. There is still work to be done before it's finished, but I'm curious if it fixes it for any of you. My package is using the 2.7.5 release of the uglify-js harmony branch (which is still not considered stable, but might work for some).



来源:https://stackoverflow.com/questions/40435209/meteor-up-deploy-failed-but-app-runs-fine-in-development

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!