【问题标题】:Trying to build Electron app with VSTS fails saying "error Please try running this command again as root/Administrator."尝试使用 VSTS 构建 Electron 应用程序失败,提示“错误请尝试以 root/管理员身份再次运行此命令。”
【发布时间】:2018-07-10 03:36:30
【问题描述】:

使用 VSTS 构建 Electron 应用,但我的 NPM 任务一直存在问题:

我不是开发人员,我是开发人员试图在 VSTS 中构建它,运行 npm install VSTS 任务,这看起来不错,但随后我运行 npm 自定义任务,其中我的命令是 npm run electron-build 然后它失败。

我以 root 管理员身份运行它,所以我不确定为什么会出现该消息。

另外:如果我 rdp 到上面有 vsts 代理的 VM 并运行相同的 NPM 命令,它只会在 VSTS 构建它时构建它,它会失败。

这是我从 VSTS 得到的输出

50375 verbose unlock done using C:\Users\LGBUILDADMIN\AppData\Roaming\npm-cache\_locks\staging-c7d6f0879aedfd51.lock for E:\Agents\LG-04\_work\244\s\node_modules\.staging
50376 verbose stack Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50377 verbose cwd E:\Agents\LG-04\_work\244\s
50378 verbose Windows_NT 6.3.9600
50379 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\LGBUILDADMIN\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install"
50380 verbose node v8.11.1
50381 verbose npm  v5.5.1
50382 error path E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules
50383 error code EPERM
50384 error errno -4048
50385 error syscall scandir
50386 error Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50386 error  { Error: EPERM: operation not permitted, scandir 'E:\Agents\LG-04\_work\244\s\node_modules\fsevents\node_modules\dashdash\node_modules'
50386 error   stack: 'Error: EPERM: operation not permitted, scandir \'E:\\Agents\\LG-04\\_work\\244\\s\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules\'',
50386 error   errno: -4048,
50386 error   code: 'EPERM',
50386 error   syscall: 'scandir',
50386 error   path: 'E:\\Agents\\LG-04\\_work\\244\\s\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules' }
50387 error Please try running this command again as root/Administrator.
50388 verbose exit [ -4048, true ]
Error: Npm failed with return code: 4294963248

这也是 package.json。

{ "name": "sds", "version": "0.0.0", "license": "MIT", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build --prod", "test": "ng test --sourceMap=false --watch", "lint": "ng lint", "e2e": "ng e2e", "tslint": "tslint -p tsconfig.json -e src/main.ts -e src/polyfills.ts -e src/test.ts -e e2e/src/*.ts", "format-all": "prettier --write **/*.{ts,js,css,scss,json}", "format": "pretty-quick --staged", "electron": "electron .", "electron-build": "ng build --prod --base-href ./ && electron .", "package-mac": "ng build --prod --base-href ./ && electron-packager . --overwrite --platform=darwin --arch=x64 --prune=true --out=release-builds", "package-win": "ng build --prod --base-href ./ && electron-packager . sds --overwrite --asar=false --platform=win32 --arch=ia32 --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"SDS\"", "package-linux": "ng build --prod --base-href ./ && electron-packager . sds --overwrite --asar=false --platform=linux --arch=x64 --prune=true --out=release-builds" }, "private": true, "main": "main.js", "dependencies": { "@angular/cli": "6.0.0", "@angular/animations": "6.0.0", "@angular/common": "6.0.0", "@angular/compiler": "6.0.0", "@angular/core": "6.0.0", "@angular/forms": "6.0.0", "@angular/http": "6.0.0", "@angular/platform-browser": "6.0.0", "@angular/platform-browser-dynamic": "6.0.0", "@angular/router": "6.0.0", "@types/lodash": "^4.14.110", "angular-fastclick": "^1.0.4", "core-js": "^2.5.7", "hammerjs": "^2.0.8", "latest": "^0.2.0", "lodash": "^4.17.10", "rxjs": "^6.2.1", "shelljs": "^0.8.2", "zone.js": "^0.8.26" }, "devDependencies": { "@angular-devkit/build-angular": "^0.6.8", "@angular/cli": "6.0.0", "@angular/compiler-cli": "6.0.0", "@angular/language-service": "6.0.0", "@types/jasmine": "^2.8.8", "@types/jasminewd2": "~2.0.2", "@types/node": "^6.0.113", "codelyzer": "^4.4.2", "electron": "^1.8.7", "electron-packager": "^12.0.2", "husky": "^0.14.3", "jasmine-core": "~2.8.0", "jasmine-spec-reporter": "~4.2.1", "karma": "~2.0.0", "karma-chrome-launcher": "~2.2.0", "karma-coverage-istanbul-reporter": "^1.4.3", "karma-jasmine": "^1.1.2", "karma-jasmine-html-reporter": "^0.2.2", "npm-run-all": "^4.1.3", "prettier": "^1.13.7", "pretty-quick": "^1.6.0", "protractor": "~5.1.2", "ts-node": "~4.1.0", "tslint": "~5.9.1", "tslint-config-prettier": "^1.13.0", "typescript": "2.7.2" } }

【问题讨论】:

  • 嗨,欢迎来到堆栈溢出。请参阅How to Ask 链接以获取有关如何提出问题并相应更新您的问题的更多详细信息。向我们展示构建管道的所有最小配置。
  • 您有一条错误消息告诉您问题和建议的解决方案。您尝试采取什么措施来纠正错误?
  • 你能通过将system.debug设置为true来显示详细日志吗?它是否在 npm install 步骤失败,您可以添加屏幕截图来说明您如何配置任务吗?

标签: node.js npm azure-devops electron


【解决方案1】:

我的问题的答案是我使用了错误的 cli 命令并且正在构建然后立即运行该应用程序,这将导致超时,因为该应用程序仍在后台运行。我更改为仅构建应用程序的命令,并且从那以后一直有效。

【讨论】:

  • 由于您的问题已经解决,您可以通过点击答案左侧的√符号来标记答案。它也将使遇到类似问题的其他成员受益。
猜你喜欢
  • 2014-04-15
  • 2018-05-18
  • 1970-01-01
  • 2018-04-22
  • 2014-12-24
  • 1970-01-01
  • 2018-02-22
  • 1970-01-01
  • 2016-08-27
相关资源
最近更新 更多