NODE_ENV 不是内部或外部命令,也不是可运行的程序,或者批处理文件

简介: 今天碰到一个奇葩问题,mac上能执行的npm命令,到windows上执行不聊了,报这个错NODE_ENV 不是内部或外部命令,也不是可运行的程序,或者批处理文件这是怎么回事呢?听我慢慢道来。

    今天碰到一个奇葩问题,mac上能执行的npm命令,到windows上执行不聊了,报这个错

NODE_ENV 不是内部或外部命令,也不是可运行的程序,或者批处理文件

这是怎么回事呢?听我慢慢道来。

"scripts": {
    "dev": " pathConfig=\"dev\" node build/dev-server.js",
    "test": "pathConfig=\"test\" node build/devserver.js",
    "prod": "pathConfig=\"prod\" node build/devserver.js",
    "start": "node build/dev-server.js",
    "build": "node build/build.js",
    "build-test": "node build/build-test.js",
    "lint": "eslint --ext .js,.vue src"
  },

    以上是我package.json中的命令,当我在windows环境下执行npm run dev或者test或者prod时,就会报错。这,是怎么回事呢?原来在mac下执行明明没有问题的?

    原来是因为我在一条脚本中,实际上执行了两条命令,一条是赋值pathConfig,一条时node执行build目录下的*.js。这是只有mac的bash或Linux的shell才有的功能,而windows的CMD并不支持这样的写法,需要这么写才行。

"dev": " set pathConfig=\"dev\" && node build/dev-server.js"

如上,拆开两条命令,用&&连接,即可。

相关文章
|
22天前
|
JavaScript Java Serverless
函数计算产品使用问题之如何使用Node.js编写程序
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
22天前
|
监控 JavaScript Linux
[译] 在生产环境运行 PM2 & Node.js
[译] 在生产环境运行 PM2 & Node.js
|
1月前
|
Kubernetes 容器 Perl
Kubernetes(K8S) Node NotReady 节点资源不足 Pod无法运行
Kubernetes(K8S) Node NotReady 节点资源不足 Pod无法运行
28 0
|
2月前
|
运维 监控 JavaScript
函数计算产品使用问题之将自定义层(nodejs 20)添加到了函数中,本地运行没有问题,但在函数计算中出现问题,该怎么办
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4月前
|
JavaScript 前端开发
基于 Node.js 环境,使用内置 http 模块,创建 Web 服务程序
基于 Node.js 环境,使用内置 http 模块,创建 Web 服务程序
|
4月前
|
前端开发
./ 相对路径与node程序的启动目录有关
./ 相对路径与node程序的启动目录有关
29 0
|
4月前
|
JavaScript 前端开发 Serverless
函数计算新功能— 支持 Node.js 18 、Node.js 20 运行时
从2024年2月起,函数计算正式发布 Node.js 18 运行时和 Nodejs.20 运行时,函数计算2.0和函数计算3.0都支持新的运行时,目前新运行时处在公测状态,欢迎大家来体验。
661 0
|
4月前
|
JavaScript 前端开发 算法
【Node.js 版本过高】运行前端时,遇到错误 `Error: error:0308010C:digital envelope routines::unsupported`
【Node.js 版本过高】运行前端时,遇到错误 `Error: error:0308010C:digital envelope routines::unsupported`
1130 0
|
8天前
|
SQL JavaScript 数据库
sqlite在Windows环境下安装、使用、node.js连接
sqlite在Windows环境下安装、使用、node.js连接
|
4天前
|
JavaScript Linux 开发者
一个用于管理多个 Node.js 版本的安装和切换开源工具
【9月更文挑战第14天】nvm(Node Version Manager)是一个开源工具,用于便捷地管理多个 Node.js 版本。其特点包括:版本安装便捷,支持 LTS 和最新版本;版本切换简单,不影响开发流程;多平台支持,包括 Windows、macOS 和 Linux;社区活跃,持续更新。通过 nvm,开发者可以轻松安装、切换和管理不同项目的 Node.js 版本,提高开发效率。