本文概述
- 解决方案1
- 解决方案2
【了解如何解决NPM错误” cp” 未被识别为内部或外部命令,可操作程序或批处理文件】在这种情况下, 如果看到NPM错误” cp” 未被识别为内部或外部命令, 则说明该项目肯定是在Mac, Linux等系统中开发的。例如, 如果你尝试运行以下脚本的build命令( package.json):
{/* Rest of your package.json file */"scripts": {"build": "babel-node -- node_modules/webpack/bin/webpack -p --config tools/webpack.config &
&
cp demo\\assets\\js\\form-* dist\\", }, /* Rest of your package.json file */}
由于cp命令在Windows中不存在, 因此它将在Windows中引发异常。
解决方案1幸运的是, 该问题仅仅是Windows与基于Unix的系统之间的语法不兼容, 因此, 手动更改带有copy的cp命令将解决此问题:
{/* Rest of your package.json file */"scripts": {"build": "babel-node -- node_modules/webpack/bin/webpack -p --config tools/webpack.config &
&
copy demo\\assets\\js\\form-* dist\\", }, /* Rest of your package.json file */}
现在, 先前的命令应该可以在Windows中使用。唯一的问题是项目的可维护性, 因为在Windows中工作时始终需要更改此项目, 但是如果仅为你工作或不打算对Windows的原始存储库进行任何更改, 它将很方便该项目。
解决方案2你也可以在Windows上安装Cygwin, 以提供对” cp” 命令的支持。 Cygwin是GNU和开放源代码工具的大集合, 它们提供的功能类似于Windows上的Linux发行版。到本文发布之日为止, Cygwin DLL的最新版本为2.9.0。通过运行setup-x86.exe(32位安装)或setup-x86_64.exe(64位安装)进行安装。使用安装程序执行全新安装或更新现有安装。
安装Cygwin后, 关闭命令提示符并重新启动它, 将使你可以使用unix的cp命令运行build命令而不会出现问题, 因此你无需手动修改package.json文件。
编码愉快!
推荐阅读
- win8.1系统下载安装之后蓝牙无法打开的处理办法【图文】
- 在Subversion版本库中运行svn update之前,如何知道要更新/删除/创建哪些文件
- 如何防止onSelect事件在DevBridge jQuery Autocomplete中触发两次
- 如何在Windows的NetBeans中配置集成终端(命令提示符)
- 如何在Dompdf中将图像与表格单元格的底部对齐
- Magento的7大发展趋势
- 如何在MySQL中反转/翻转TinyInt或Boolean列的值
- 如何在Windows中配置NetBeans以将SASS或SCSS文件自动编译为CSS
- 如何在Windows上使用XAMPP恢复InnoDB MySQL文件