Mac系统安装azure-functions-core-tools遇EBADPLATFORM错误求助
解决Mac上安装azure-functions-core-tools时的EBADPLATFORM错误
问题根源
你遇到的npm ERR! code EBADPLATFORM错误核心原因很明确:azure-functions-core-tools v1.x版本根本不支持macOS平台,它的包配置里只声明了Windows和Linux兼容,所以不管你怎么升级Node.js、npm,或是安装.NET Core SDK,都没法绕过这个平台限制。
解决方案
根据你的需求,分两种情况处理:
情况1:使用主流支持macOS的版本(推荐)
现在官方维护的稳定版本是v3.x,完全支持macOS,步骤如下:
- 先清理已安装的旧版本:
# 卸载npm全局安装的v1版本 npm uninstall -g azure-functions-core-tools@1 # 卸载brew安装的版本(如果有的话) brew uninstall azure-functions-core-tools - 安装v3版本(加上
--unsafe-perm true是因为macOS的权限限制,确保工具能正确安装):npm install -g azure-functions-core-tools@3 --unsafe-perm true - 验证安装成功:
如果输出类似func --version3.x.x的版本号,就说明安装没问题了。
情况2:必须使用v1.x版本(不推荐,已停止维护)
如果因为项目依赖必须用v1版本,那只能通过Docker来模拟Linux环境安装:
- 拉取一个Linux镜像(比如Ubuntu 16.04,对应Node.js 8的兼容环境):
docker pull ubuntu:16.04 - 启动容器并进入交互模式:
docker run -it --rm ubuntu:16.04 - 在容器内安装Node.js 8和npm 5:
apt update && apt install -y curl curl -sL https://deb.nodesource.com/setup_8.x | bash - apt install -y nodejs - 安装v1.0.9版本的工具:
这样就能在Linux环境里使用v1版本的工具了。npm install -g azure-functions-core-tools@1.0.9
内容的提问来源于stack exchange,提问作者user1232690
相关产品推荐
相关产品推荐

