STS执行mvn azure-functions:run报错func命令未找到的问题咨询
解决STS中执行
mvn package azure-functions:run找不到func命令的问题 问题原因
STS启动时加载的环境变量PATH与手动打开的终端不一致,导致STS进程无法定位到func命令的位置,而终端能正常识别。
解决步骤
获取
func命令的安装路径
在终端执行对应命令获取路径:# Linux/macOS系统 which func # Windows系统 where func会返回类似
/usr/local/bin/func(Linux/macOS)或C:\Program Files\Microsoft\Azure Functions Core Tools\func.exe(Windows)的路径记录。为STS配置正确的环境变量
有两种常用配置方式:方式一:修改STS启动配置
- Linux/macOS:找到STS安装目录下的
sts.ini文件,在文件末尾添加一行:
示例:-Dorg.eclipse.equinox.launcher.PATH=<func所在目录>:${env_var:PATH}-Dorg.eclipse.equinox.launcher.PATH=/usr/local/bin:${env_var:PATH} - Windows:右键STS快捷方式选择「属性」,在「目标」字段末尾添加
-Dorg.eclipse.equinox.launcher.PATH="C:\Program Files\Microsoft\Azure Functions Core Tools;%PATH%"(注意前面需加空格)
修改完成后重启STS。
- Linux/macOS:找到STS安装目录下的
方式二:在Run Configuration中单独配置
- 在STS中打开
Run > Run Configurations,找到你执行Maven命令的对应配置 - 切换到
Environment标签,点击New,添加变量名PATH,变量值为func所在目录:原PATH内容(Linux/macOS用冒号分隔,Windows用分号分隔) - 保存配置后重新运行Maven命令。
- 在STS中打开
检查Azure Toolkit配置(可选)
打开STS的Window > Preferences > Azure > Functions,若存在Functions Core Tools Path配置项,直接填入之前获取到的func命令路径,保存后重启STS测试。
内容的提问来源于stack exchange,提问作者amdg
相关产品推荐
相关产品推荐

