如何解决安装Open MCT的解析错误?

时间:2019-08-14 12:58:37

标签: javascript git

我当前正在尝试安装NASA的Open MCT(Link),并且在安装过程中遇到了错误。运行npm install后,出现以下错误消息:

{ Error: Parse error using esprima for file: C:/Users/MCTUser/openmct/node_modules/painterro/build/painterro.min.js
Error: Line 258: Unexpected token *
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:29563:47
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3063:37
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3011:25
    at Function.prim.nextTick (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:29929:9)
    at Object.callback (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3010:26)
    at Object.then (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3060:23)
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:29548:36
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3063:37
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3011:25
    at Function.prim.nextTick (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:29929:9)
  fileName:
   'C:/Users/MCTUser/openmct/node_modules/painterro/build/painterro.min.js' }

events.js:174
      throw er; // Unhandled 'error' event
      ^
Error: Error: Module loading did not complete for: openmct, src/MCT, src/plugins/plugins, platform/features/notebook/bundle, platform/features/notebook/src/actions/AnnotateSnapshot, painterro
    at Function.build.checkForErrors (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:31556:19)

    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:30099:19
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3081:39
    at C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3021:25
    at Function.prim.nextTick (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:29929:9)
    at Object.errback (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3020:26)
    at Object.callback (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3006:23)
    at Object.then (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:3060:23)
    at build (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:30056:12)
    at runBuild (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:32006:17)
    at Object.execCb (C:\Users\MCTUser\openmct\node_modules\requirejs\bin\r.js:1941:33)
Emitted 'error' event at:
    at DestroyableTransform.onerror (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_readable.js:640:52)
    at DestroyableTransform.emit (events.js:198:13)
    at done (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_transform.js:202:25)
    at C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_transform.js:139:7
    at DestroyableTransform._flush (C:\Users\MCTUser\openmct\node_modules\gulp-requirejs-optimize\index.js:97:4)
    at DestroyableTransform.prefinish (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_transform.js:138:10)
    at DestroyableTransform.emit (events.js:198:13)
    at prefinish (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_writable.js:619:14)
    at finishMaybe (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_writable.js:627:5)
    at endWritable (C:\Users\MCTUser\openmct\node_modules\readable-stream\lib\_stream_writable.js:638:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! openmct@0.14.0-SNAPSHOT prepare: `node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the openmct@0.14.0-SNAPSHOT prepare script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\MCTUser\AppData\Roaming\npm-cache\_logs\2019-08-14T12_42_14_925Z-debug.log

我已按照教程中的要求安装了GIT和Node.js。有谁知道可能是什么原因以及如何解决?

2 个答案:

答案 0 :(得分:1)

  1. 安装npm-check-updates(ncu)

  2. 使用ncu更新所有模块,请参阅ncu帮助,更新package.json

  3. 运行“ npm install”更新模块

  4. 将gulp ver3.x.x重新安装为以旧方式编写的gulpfile.js

  5. 在文件opencmt.js中将d3- *路径“ build”修改为“ dist” 然后运行npm install,就可以了

答案 1 :(得分:1)

此提交https://github.com/nasa/openmct/commit/3dee6db5e227775ac41ef2f29f859db3206959fa中已解决此问题 通过锁定painterro版本。与painterro依赖关系中的问题(isMobile)

有关