You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Functions消费计划下PowerShell模块加载失败求助

解决Azure消费计划PowerShell函数模块加载失败问题

核心排查与修复步骤

  • 验证requirements.psd1格式正确性
    确保文件内模块配置无拼写错误,版本范围语法正确,示例格式如下:

    @{
        'ExchangeOnlineManagement' = '3.*'
        'Microsoft.Graph' = '2.*'
    }
    

    注意:文件必须放在函数根目录(与run.ps1同级),且文件名不能拼写错误。

  • 确认PowerShell运行时兼容性
    Azure消费计划的PowerShell函数默认使用7.x版本,检查模块版本是否兼容:

    • ExchangeOnlineManagement 3.* 支持PowerShell 7.0+
    • Microsoft.Graph 2.* 支持PowerShell 7.0+
      可在函数应用配置的FUNCTIONS_WORKER_RUNTIME_VERSION中确认运行时版本,若版本过低需升级。
  • 优化模块导入方式
    在run.ps1顶部添加#Requires指令替代手动Import-Module,强制PowerShell加载指定模块:

    #Requires -Modules @{ModuleName='ExchangeOnlineManagement'; ModuleVersion='3.*'}, @{ModuleName='Microsoft.Graph'; ModuleVersion='2.*'}
    

    若仍需手动导入,需指定版本范围并添加-Force参数:

    Import-Module ExchangeOnlineManagement -RequiredVersion 3.* -Force
    Import-Module Microsoft.Graph -RequiredVersion 2.* -Force
    
  • 手动部署模块(自动加载失效时)
    消费计划默认运行时自动下载模块,无提前生成的Modules文件夹属正常现象,若自动下载失败,可手动打包上传:

    1. 本地执行命令保存模块到指定路径:
      Save-Module -Name ExchangeOnlineManagement -RequiredVersion 3.2.0 -Path .\Modules
      Save-Module -Name Microsoft.Graph -RequiredVersion 2.16.0 -Path .\Modules
      
    2. 将生成的Modules文件夹上传至函数应用的site/wwwroot/目录(通过Azure门户的高级工具Kudu或FTP上传)。
  • 排查网络访问限制
    若函数应用配置了虚拟网络、防火墙或私有端点,需确保允许出站访问psgallery.azure.com(PowerShell Gallery地址),否则无法自动下载模块。

  • 查看详细运行日志
    在Azure门户的函数应用中打开「日志流」,查看模块加载阶段的具体错误信息(如下载超时、版本不匹配等),定位根因。

内容的提问来源于stack exchange,提问作者microsoftdeveloperdesigner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 04:03:26