我有一个 Maven 项目,其中的 JavaScript 项目被克隆为 git 子模块。所以目录结构看起来像 mavenapp/src/main/javascript/[npm project files]
在我的 package.json 中,测试如下所示:
"test": "react-scripts test --env=jsdom",
但是当我尝试运行 npm test
时,它说
'react-scripts' 不被识别为内部或外部命令,
有趣的是,当我独立克隆 javascript 项目时,我没有收到此错误。我已尝试重新运行 npm install
。
NPM 版本:5.5.1 Node.js 版本:9.3.0
这是关于安装时您的 node_modules/
目录中缺少 react-scripts 文件的错误。
检查您的 react-script 依赖项在 package.json
中是否可用。
如果不可用,则通过以下方式手动添加:
npm install react-scripts --save
如果 package.json
中存在 react-scripts
,则只需键入此命令
npm install
如果 package.json
中不存在 react-scripts
,那么您可能还没有安装它。为此,请运行:
npm install react-scripts --save
尝试:
rm -rf node_modules && npm install
首先擦除 node_modules
通常会解决很多奇怪的、与包相关的问题,例如 Node.js 中的问题。
npm install
记录的任何错误是吗?尝试运行 npm install -f
并查看是否有任何变化。可能是另一个安装失败并阻止 create-react-app
完全安装的软件包。顺便说一句,强制使用 -f
安装 npm 从来都不是一个完整的解决方案......只是一个故障排除步骤。如果在你运行之后有任何变化,那么你就知道其中一个包有问题。
javascript/node_modules/.bin/react-scripts
处是否有文件。如果不是,则可能有几个不同的原因,包括权限问题、操作系统对创建符号链接的限制(node_moduels/.bin
中的所有内容都是安装时生成的符号链接。也可能是您没有安装 react-scripts。 .. 尝试运行 npm install --save react-scripts
看看是否有帮助。
node_modules
文件夹) - 只需删除文件夹并重新安装即可解决
运行这些命令对我有用:
npm cache clean --force
npm rebuild
npm install
npm cache clean --force
不是必需的(节点 v14.17.3,npm 6.14.13)。我确实使用了 npm cache verify
。我不确定这是否有效果。
在我的情况下,我的节点包发生了一些问题。所以我运行 npm audit fix
并解决了所有问题
面临同样的问题,虽然我正在使用纱线。
以下对我有用:
yarn install
yarn start
运行 npm update
命令解决了我的问题。
为避免此问题再次发生,或者每当有人下载您的项目时,您都会遇到此问题。
最好使用以下命令将其添加到开发依赖项中:
npm install react-scripts --save-dev
它会像这样添加。
"devDependencies": {
"react-scripts": "^4.0.3"
}
提交并推送您的代码。
2022 答案:只需删除 node_modules
文件夹并运行
npm install
或者:
yarn
它对我有用
要纠正此问题,请执行以下步骤
运行 npm install 然后运行 npm start
这对我来说很好
react-scripts 应该在您运行 npx create-react-app your-app
时作为依赖项列出,但由于某种原因,它会出现此错误。我将列出我遵循的一些步骤,这些步骤可能会帮助您修复此错误:
首先,检查你的 React package.json 是否有 react-scripts:例如,你应该看到:
"dependencies": {
...
"react-scripts": "4.0.3",
...
},
如果它已经存在,现在尝试使用 npm i
重新安装您的依赖项
如果您仍然遇到同样的错误,请尝试使用 rm -rf node_modules/
删除您的 node_modules,然后使用 npm i
重新安装您的依赖项
但是如果包 react-scripts 不在您的 package.json 文件中,您应该通过包管理器安装它,例如:npm i react-scripts
然后尝试启动您的应用与 npm start
我卸载了我的 Node.js 并显示了隐藏文件。然后,我去了 C:\Users\yourpcname\AppData\Roaming\ 并删除了 npm 和 npm-cache 文件夹。最后,我安装了新版本的 Node.js。
我遇到了同样的问题。我使用 npm audit fix --force
解决了它
react-scripts 不被识别为与 npm 相关的内部或外部命令。
如果适用,我会将 package.json 文件中的所有依赖项更新到主目录和客户端目录中的最新版本。您可以通过使用星号“*”来执行此操作,而不是在 package.json 文件中为依赖项指定特定版本号。
例如:
"dependencies": {
"body-parser": "*",
"express": "*",
"mongoose": "*",
"react": "*",
"react-dom": "*",
"react-final-form": "*",
"react-final-form-listeners": "*",
"react-mapbox-gl": "*",
"react-redux": "*",
"react-responsive-modal": "*",
}
然后,我将确保删除任何 package-lock.json,然后在主目录和客户端目录中运行 npm install 和 yarn install (如果适用)。
然后,您应该能够运行 yarn 构建,然后使用 yarn start 来运行应用程序。
*
作为您的版本号是有问题的,因为它可能会导致在不同系统上安装不同版本的软件包。使用锁定的版本号并根据需要进行更新
对于便携式应用程序更改
包.json
如下
"scripts": {
"start": "node node_modules/.bin/react-scripts start",
"build": "node node_modules/.bin/react-scripts build",
"test": "node node_modules/.bin/react-scripts test",
"eject": "node node_modules/.bin/react-scripts eject"
}
这就是我修复它的方法
检查并更新路径变量(如何更新路径变量见下文) 删除 node_modules 和 package-lock.json 运行 npm install run npm run start
如果这不起作用,请尝试安装 nodejs 并运行修复
或清理 npm 缓存 npm cache clean --force
更新路径变量
按windows键搜索编辑系统环境变量点击环境变量...在系统变量底部(会有两个部分)选择路径变量名点击编辑..检查是否有C:\Program Files\nodejs列表,如果没有添加这个
我遇到过同样的问题。我做了这里建议的一切。但没有任何效果。我在我的 node_modules 中安装了 react-scripts 也使用了缓存,但都是徒劳的。然后我只是 npx create-react-app 并将我的所有代码移动到这个新文件夹中并且一切正常。
npx create-react-app myapp
第一次运行:
npm ci
然后:
npm start
在修复此问题时,使用具有管理员权限的 git bash 或 windows cmd 运行 npm install,在编辑器的终端中运行这些命令没有帮助。
我已经尝试了许多在线上找到的解决此问题的方法,但在我的情况下,除了重新安装 NVM for Windows(我用来管理多个 Node 版本)之外,没有任何效果。在安装程序中,它会检测已安装的 Node 版本并询问用户是否希望 NVM 控制它们。我说是的,NVM 修复了所有 PATH 问题。结果,事情像以前一样工作。此问题可能有多种原因,但损坏的 PATH 绝对是其中之一,并且(重新)安装 NVM 修复了 PATH。
这是一个相当古老的问题,但这可能对将来的参考有所帮助。删除 node_modules 文件夹并再次运行 npm install。为我工作。
就我而言,我在安装了节点 v14.0.5 的 Linux 上编辑了我的文件,当我重新启动到安装了节点 v14.0.3 的 Windows 时,我得到了同样的错误。所以我在 Windows 上更新了节点版本,一切都很好。
有类似的问题..我用纱线来修复它。我注意到在我的节点模块中找不到 react-scripts,所以我决定用 npm 下载它,但我似乎也失败了。所以我尝试了纱线(纱线添加反应脚本)并解决了噩梦!希望这对你也有用。调试愉快。
对我来说,我只是重新安装了 react-scripts 而不是 react-scripts --save。
昨天在运行 npm run build
时突然在 Azure DevOps
中开始出现此错误:
'react-scripts' 不是内部或外部命令、可运行程序或批处理文件。
但是,当查看完成的 npm ci
时,它充满了错误,例如:
FetchError:尝试获取 https://registry.npmjs.org/@babel%2fcompat-data 时响应正文无效:ENOENT:没有这样的文件或目录,lstat 'D:\a\1.npm_cacache\content-v2\sha512 \58\0b\dc7dce0b33e86d97736b3c419005951e32af28dda3f5b8c746f16d53d4baed1dc2fd2493e9310f744696008400bf8c91ca84f9fb3ebf541ba93a541b144a'
注释掉缓存时,一切都重新开始工作:
npm_config_cache: $(Pipeline.Workspace)/.npm
- task: Cache@2
inputs:
key: 'npm | "$(Agent.OS)" | $(clientApp)\package-lock.json'
restoreKeys: |
npm | "$(Agent.OS)"
path: $(npm_config_cache)
displayName: Cache npm
奇怪的是,直到昨天(2021-12-02)它已经工作了一年多,我们使用与 Microsoft 记录的完全相同的代码进行缓存。
https://docs.microsoft.com/en-us/azure/devops/pipelines/release/caching?view=azure-devops#nodejsnpm
注意到 Azure DevOps 状态的降级或不健康
至于我,我设法通过安装这个来解决这个问题:
npm 审计修复 --force
然后它就起作用了。
就我而言,问题与 react-scripts 软件包安装要写入的某些文件没有足够的文件权限有关。解决它的方法是以管理员身份运行 git bash,然后再次运行 npm install --save react-scripts
。
当我使用 React 创建一个新项目时,要安装 React 模块,我必须从新项目 ClientApp 文件夹中运行“npm install”(PowerShell)(例如“C:\Users\Chris\source\repos\HelloWorld2\HelloWorld2\客户端应用程序”)。带有 React 的 .NET 核心 WebApp 需要将 React 文件安装在正确的位置,以便 React 命令正常工作。
这对我有用:
转到 CLI 中的项目文件夹并键入 npm install.Go 如果使用 yarn 等,则执行类似的命令。
如果您使用的是 Npm,则输入 npm start。如果使用纱线等,请执行类似的命令。
文件开始工作
npm i -g react-scripts
yarn install
或npm install
来解决问题,因为这对我来说已经足够了。