执行npm run watch-tsc报错:Missing script: 'watch-tsc'求助
执行
npm run watch-tsc提示缺少脚本的解决方案 问题现象
执行npm run watch-tsc时触发报错:
C:\Users\ADMIN>npm run watch-tsc npm ERR! Missing script: "watch-tsc" npm ERR! npm ERR! To see a list of scripts, run: npm ERR! npm run npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\ADMIN\AppData\Local\npm-cache\_logs\2022-10-27T07_29_50_766Z-debug-0.log
完整日志详情:
0 verbose cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js 1 info using npm@8.19.2 2 info using node@v18.12.0 3 timing npm:load:whichnode Completed in 0ms 4 timing config:load:defaults Completed in 1ms 5 timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 5ms 6 timing config:load:builtin Completed in 5ms 7 timing config:load:cli Completed in 2ms 8 timing config:load:env Completed in 1ms 9 timing config:load:project Completed in 3ms 10 timing config:load:file:C:\Users\ADMIN\.npmrc Completed in 0ms 11 timing config:load:user Completed in 1ms 12 timing config:load:file:C:\Users\ADMIN\AppData\Roaming\npm\etc\npmrc Completed in 0ms 13 timing config:load:global Completed in 0ms 14 timing config:load:validate Completed in 0ms 15 timing config:load:credentials Completed in 1ms 16 timing config:load:setEnvs Completed in 1ms 17 timing config:load Completed in 15ms 18 timing npm:load:configload Completed in 15ms 19 timing npm:load:mkdirpcache Completed in 0ms 20 timing npm:load:mkdirplogs Completed in 1ms 21 verbose title npm run watch-tsc 22 verbose argv "run" "watch-tsc" 23 timing npm:load:setTitle Completed in 1ms 24 timing config:load:flatten Completed in 2ms 25 timing npm:load:display Completed in 3ms 26 verbose logfile logs-max:10 dir:C:\Users\ADMIN\AppData\Local\npm-cache\_logs 27 verbose logfile C:\Users\ADMIN\AppData\Local\npm-cache\_logs\2022-10-27T07_29_50_766Z-debug-0.log 28 timing npm:load:logFile Completed in 14ms 29 timing npm:load:timers Completed in 0ms 30 timing npm:load:configScope Completed in 0ms 31 timing npm:load Completed in 35ms 32 silly logfile done cleaning log files 33 timing command:run Completed in 4ms 34 verbose stack Error: Missing script: "watch-tsc" 34 verbose stack 34 verbose stack To see a list of scripts, run: 34 verbose stack npm run 34 verbose stack at RunScript.run (C:\Program Files\nodejs\node_modules\npm\lib\commands\run-script.js:98:13) 34 verbose stack at async module.exports (C:\Program Files\nodejs\node_modules\npm\lib\cli.js:78:5) 35 verbose cwd C:\Users\ADMIN 36 verbose Windows_NT 10.0.19044 37 verbose node v18.12.0 38 verbose npm v8.19.2 39 error Missing script: "watch-tsc" 39 error 39 error To see a list of scripts, run: 39 error npm run 40 verbose exit 1 41 timing npm Completed in 55ms 42 verbose code 1 43 error A complete log of this run can be found in: 43 error C:\Users\ADMIN\AppData\Local\npm-cache\_logs\2022-10-27T07_29_50_766Z-debug-0.log
已尝试操作
执行以下命令重装依赖,问题未解决:
rm -rf node_modules package-lock.json npm install
npm doctor检查结果:
Check Value Recommendation/Notes npm ping ok npm -v ok current: v8.19.2, latest: v8.19.2 node -v ok current: v18.12.0, recommended: v18.12.0 npm config get registry ok using default registry (https://registry.npmjs.org/) which git ok C:\Program Files\Git\cmd\git.EXE Verify cache contents ok verified 525 tarballs
关键信息
项目package.json已包含目标脚本:
{ "name": "typescript", "author": "Microsoft Corp.", "homepage": "https://www.typescriptlang.org/", "version": "4.8.4", "license": "Apache-2.0", "description": "TypeScript is a language for application scale JavaScript development", "keywords": [ "TypeScript", "Microsoft", "compiler", "language", "javascript" ], "bugs": { "url": "https://github.com/Microsoft/TypeScript/issues" }, "repository": { "type": "git", "url": "https://github.com/Microsoft/TypeScript.git" }, "main": "./lib/typescript.js", "typings": "./lib/typescript.d.ts", "bin": { "tsc": "./bin/tsc", "tsserver": "./bin/tsserver" }, "engines": { "node": ">=4.2.0" }, "devDependencies": { "@octokit/rest": "latest", "@types/chai": "latest", "@types/convert-source-map": "latest", "@types/fs-extra": "^9.0.13", "@types/glob": "latest", "@types/gulp": "^4.0.9", "@types/gulp-concat": "latest", "@types/gulp-newer": "latest", "@types/gulp-rename": "latest", "@types/gulp-sourcemaps": "latest", "@types/merge2": "latest", "@types/microsoft__typescript-etw": "latest", "@types/minimatch": "latest", "@types/minimist": "latest", "@types/mkdirp": "latest", "@types/mocha": "latest", "@types/ms": "latest", "@types/node": "latest", "@types/node-fetch": "^2.6.2", "@types/q": "latest", "@types/source-map-support": "latest", "@types/xml2js": "^0.4.11", "@typescript-eslint/eslint-plugin": "^5.28.0", "@typescript-eslint/parser": "^5.28.0", "@typescript-eslint/utils": "^5.28.0", "async": "latest", "azure-devops-node-api": "^11.1.1", "chai": "latest", "chalk": "^4.1.2", "convert-source-map": "latest", "del": "6.1.1", "diff": "^5.1.0", "eslint": "8.17.0", "eslint-formatter-autolinkable-stylish": "1.2.0", "eslint-plugin-import": "2.26.0", "eslint-plugin-jsdoc": "39.3.2", "eslint-plugin-no-null": "1.0.2", "fancy-log": "latest", "fs-extra": "^9.1.0", "glob": "latest", "gulp": "^4.0.2", "gulp-concat": "latest", "gulp-insert": "latest", "gulp-newer": "latest", "gulp-rename": "latest", "gulp-sourcemaps": "latest", "merge2": "latest", "minimist": "latest", "mkdirp": "latest", "mocha": "latest", "mocha-fivemat-progress-reporter": "latest", "ms": "^2.1.3", "node-fetch": "^2.6.7", "prex": "^0.4.7", "q": "latest", "source-map-support": "latest", "typescript": "^4.5.5", "vinyl": "latest", "vinyl-sourcemaps-apply": "latest", "xml2js": "^0.4.23" }, "overrides": { "es5-ext": "0.10.53" }, "scripts": { "prepare": "gulp build-eslint-rules", "pretest": "gulp tests", "test": "gulp runtests-parallel --light=false", "test:eslint-rules": "gulp run-eslint-rules-tests", "build": "npm run build:compiler && npm run build:tests", "build:compiler": "gulp local", "build:tests": "gulp tests", "start": "node lib/tsc", "clean": "gulp clean", "gulp": "gulp", "lint": "gulp lint", "lint:ci": "gulp lint --ci", "lint:compiler": "gulp lint-compiler", "lint:scripts": "gulp lint-scripts", "watch-tsc": "tsc --watch", "setup-hooks": "node scripts/link-hooks.js" }, "browser": { "fs": false, "os": false, "path": false, "crypto": false, "buffer": false, "@microsoft/typescript-etw": false, "source-map-support": false, "inspector": false }, "packageManager": "npm@8.15.0", "volta": { "node": "14.20.0", "npm": "8.15.0" } }
解决步骤
从日志的verbose cwd C:\Users\ADMIN可以看出,你是在系统用户目录下执行命令,而非项目根目录(即存放上述package.json的文件夹)。npm只会读取当前工作目录下的package.json,因此提示找不到脚本。
- 切换到项目根目录
打开命令行,执行cd命令切换到项目所在文件夹,例如:cd C:\Users\ADMIN\你的项目文件夹名称 - 重新执行命令
在项目根目录下再次运行:npm run watch-tsc
额外注意事项
项目配置了Volta,指定Node版本为v14.20.0,但当前使用的是v18.12.0。如果切换目录后仍有问题,可以:
- 安装Volta后执行
volta install,让Volta自动匹配项目指定的Node和npm版本 - 直接用Volta指定版本运行命令:
volta run npm run watch-tsc
内容的提问来源于stack exchange,提问作者Xuan Tung Dang
相关产品推荐
相关产品推荐

