更新node.js导致'write EPIPE'与ng e2e

sko*_*dev 13 node.js protractor angular

我有一个角度7应用程序,它在服务器上的CI管道中运行其e2e测试.我的服务器包管理器将node.js版本从10.14更新到10.14.2(两个LTS版本)这导致ng e2e抛出以下错误:

i ?wdm?: Compiled successfully.
[13:38:47] I/update - chromedriver: file exists node_modules\webdriver-manager\selenium\chromedriver_2.45.zip
[13:38:47] I/update - chromedriver: unzipping chromedriver_2.45.zip
[13:38:48] I/update - chromedriver: chromedriver_2.45.exe up to date
events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at ChildProcess.target._send (internal/child_process.js:742:20)
    at ChildProcess.target.send (internal/child_process.js:626:19)
    at Observable.rxjs_1.Observable.obs [as _subscribe] (node_modules\@angular-devkit\build-angular\src\utils\run-module-as-observable-fork.js:57:23)
    at Observable._trySubscribe (node_modules\rxjs\internal\Observable.js:44:25)
    at Observable.subscribe (node_modules\rxjs\internal\Observable.js:30:22)
    at node_modules\rxjs\internal\util\subscribeTo.js:22:31
    at Object.subscribeToResult (node_modules\rxjs\internal\util\subscribeToResult.js:10:45)
    at MergeMapSubscriber._innerSub (node_modules\rxjs\internal\operators\mergeMap.js:82:29)
    at MergeMapSubscriber._tryNext (node_modules\rxjs\internal\operators\mergeMap.js:76:14)
    at MergeMapSubscriber._next (node_modules\rxjs\internal\operators\mergeMap.js:59:18)
    at MergeMapSubscriber.Subscriber.next (node_modules\rxjs\internal\Subscriber.js:67:18)
    at MergeMapSubscriber.notifyNext (node_modules\rxjs\internal\operators\mergeMap.js:92:26)
    at InnerSubscriber._next (node_modules\rxjs\internal\InnerSubscriber.js:28:21)
    at InnerSubscriber.Subscriber.next (node_modules\rxjs\internal\Subscriber.js:67:18)
    at node_modules\rxjs\internal\util\subscribeToPromise.js:7:24
    at process._tickCallback (internal/process/next_tick.js:68:7)
Emitted 'error' event at:
    at process.nextTick (internal/child_process.js:746:39)
    at process._tickCallback (internal/process/next_tick.js:61:11)
Run Code Online (Sandbox Code Playgroud)

当我回滚到10.14 ng e2e再次工作时,我能够在本地重现这一点.

的package.json:

"dependencies": {
    "@angular-devkit/build-angular": "~0.10.0",
    "@angular/animations": "^7.0.1",
    "@angular/cdk": "^7.0.2",
    "@angular/common": "^7.0.1",
    "@angular/compiler": "^7.0.1",
    "@angular/core": "^7.0.1",
    "@angular/forms": "^7.0.1",
    "@angular/http": "^7.0.1",
    "@angular/material": "^7.0.2",
    "@angular/platform-browser": "^7.0.1",
    "@angular/platform-browser-dynamic": "^7.0.1",
    "@angular/platform-server": "^7.0.1",
    "@angular/router": "^7.0.1",
    "@ng-bootstrap/ng-bootstrap": "^4.0.0",
    "@ngx-translate/core": "^11.0.0",
    "@ngx-translate/http-loader": "^4.0.0",
    "aspnet-prerendering": "^3.0.1",
    "bootstrap": "^4.1.3",
    "classlist.js": "^1.1.20150312",
    "core-js": "^2.5.7",
    "devextreme": "18.1.4",
    "devextreme-angular": "18.1.4",
    "devextreme-aspnet-data": "1.4.5",
    "lodash": "^4.17.11",
    "node-sass": "^4.10.0",
    "rxjs": "^6.3.3",
    "toastr": "^2.1.4",
    "webpack": "^4.19.1",
    "zone.js": "^0.8.26"
},
    "devDependencies": {
    "@angular-devkit/core": "0.8.3",
    "@angular/cli": "^7.0.3",
    "@angular/compiler-cli": "^7.0.1",
    "@angular/language-service": "^7.0.1",
    "@babel/core": "^7.1.2",
    "@compodoc/compodoc": "^1.1.5",
    "@storybook/addon-actions": "^4.0.0",
    "@storybook/addon-knobs": "^4.0.0",
    "@storybook/addon-links": "^4.0.0",
    "@storybook/addon-notes": "^4.0.0",
    "@storybook/addons": "^4.0.0",
    "@storybook/angular": "^4.0.0",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/jquery": "^3.3.9",
    "@types/node": "^10.12.1",
    "@types/react": "^16.4.14",
    "@types/toastr": "^2.1.35",
    "babel-loader": "^8.0.4",
    "codelyzer": "^4.5.0",
    "jasmine": "3.2.0",
    "jasmine-core": "3.2.0",
    "jasmine-reporters": "^2.3.2",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~2.0.4",
    "karma-chrome-launcher": "~2.2.0",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^2.0.1",
    "karma-jasmine": "^1.1.2",
    "karma-jasmine-html-reporter": "1.3.1",
    "karma-junit-reporter": "^1.2.0",
    "ngx-perfect-scrollbar": "^7.0.0",
    "prettier": "^1.14.3",
    "protractor": "^5.4.1",
    "react": "^16.5.2",
    "react-dom": "^16.5.2",
    "ts-node": "~7.0.1",
    "tslint": "~5.11.0",
    "tslint-config-prettier": "^1.15.0",
    "tslint-plugin-prettier": "^2.0.0",
    "typescript": "^3.1.3",
    "webdriver-manager": "^12.1.0",
    "webpack-bundle-analyzer": "^3.0.3"
}
Run Code Online (Sandbox Code Playgroud)

知道究竟是什么导致了这个以及如何修复它?

mpr*_*pro 4

事实上,正如其中一条评论中提到的,更新到最新Angular CLI版本就可以完成这项工作。补丁已发布,因此无需按照nodejs上面链接中的建议降级。