将Meteor更新为1.0.2.1后出现“错误:无法找到模块'esprima'”

时间:2015-01-09 16:06:25

标签: node.js meteor esprima

将Meteor更新到版本1.0.2.1后,我收到错误:

Error: Cannot find module 'esprima'
W20150109-09:58:02.883(-6)? (STDERR)     at Function.Module._resolveFilename (module.js:338:15)
W20150109-09:58:02.883(-6)? (STDERR)     at Function.Module._load (module.js:280:25)
W20150109-09:58:02.883(-6)? (STDERR)     at Module.require (module.js:364:17)
W20150109-09:58:02.883(-6)? (STDERR)     at require (module.js:380:17)
W20150109-09:58:02.884(-6)? (STDERR)     at Object.Npm.require (/Users/sgidev-005/dev/newProject/.meteor/local/build/programs/server/boot.js:99:18)
W20150109-09:58:02.884(-6)? (STDERR)     at cmd (packages/mrt:server-eval/helpers.js:116:1)
W20150109-09:58:02.884(-6)? (STDERR)     at /Users/sgidev-005/dev/newProject/.meteor/local/build/programs/server/packages/mrt_server-eval.js:850:4
W20150109-09:58:02.884(-6)? (STDERR)     at /Users/sgidev-005/dev/newProject/.meteor/local/build/programs/server/packages/mrt_server-eval.js:906:3
W20150109-09:58:02.885(-6)? (STDERR)     at /Users/sgidev-005/dev/newProject/.meteor/local/build/programs/server/boot.js:175:10
W20150109-09:58:02.885(-6)? (STDERR)     at Array.forEach (native)

这似乎是一个Node模块错误,但我知道Meteor使用自己的捆绑版Node,所以我不明白为什么这个模块会丢失。

我的某个软件包是否可能导致此错误?以下是meteor list

的结果
aashu28:bootstrap-validator  0.0.1  bootstrapValidator to validate forms and use bootstrap 3 to show errors
accounts-base                1.1.3  A user account system
accounts-facebook            1.0.3  Login service for Facebook accounts
accounts-google              1.0.3  Login service for Google accounts
accounts-password            1.0.5  Password support for accounts
alanning:roles               1.2.13  Role-based authorization
chrismbeckett:fontawesome4   4.2.2  Scalable vector icons that can be customized with the power of CSS.
email                        1.0.5  Send email messages
joshowens:accounts-entry     1.0.3  Make signin and signout their own pages with routes.
jquery                       1.0.2  Manipulate the DOM using CSS selectors
less                         1.0.12  The dynamic stylesheet language
mrt:bootstrap-growl          0.1.3  Pretty simple jQuery plugin that turns standard Bootstrap alerts into Growl-like notifications.
mrt:iron-router-progress     0.9.3  Progressbar for iron:router
mrt:jquery-ui                1.9.2  jQuery-UI - jQuery user interface
mrt:jquery-ui-bootstrap      1.8.16  jQuery-UI-Bootstrap - custom CSS jQuery UI theme for Twitter Bootstrap
mrt:server-eval              0.6.3  allows client to run js in server context
nemo64:bootstrap             3.3.1_1  Highly configurable bootstrap integration.
noorderstorm:hammer          0.1.3  A javascript library for multi-touch gestures
sacha:spin                   2.0.4  Simple spinner package for Meteor
sewdn:velocityjs             0.8.0  Velocity.js jQuery animation plugin
spiderable                   1.0.6  Makes the application crawlable to web spiders
standard-app-packages        1.0.4  Moved to meteor-platform
underscore                   1.0.2  Collection of small helpers: _.map, _.each, ...

2 个答案:

答案 0 :(得分:0)

看起来你的Meteor安装不好,esprima是一个js解析器,Meteor用它来构建你的项目作为工具包的一部分。你的项目很好,很可能没有遗漏任何东西。

您可能需要重新安装Meteor:

sudo rm -rf ~/.meteor
curl https://install.meteor.com | sh

答案 1 :(得分:0)

经过多次故障排除后,我找到了答案!

mrt:server-eval包以某种方式弄乱了应用程序编译。一旦删除,一切都开始正常工作。