从 Mac 上的 Rider 附加到 Azure Functions 的调试器

Posted

技术标签:

【中文标题】从 Mac 上的 Rider 附加到 Azure Functions 的调试器【英文标题】:Attach to debugger for Azure Functions from Rider on Mac 【发布时间】:2018-09-26 15:09:45 【问题描述】:

只是想知道是否有人设法使用 JetBrains Rider 附加和调试 Azure Functions 应用程序?

Azure Functions 似乎只有 2 个调试选项

--debug VS 
--debug VsCode

不确定 Rider 是否可以附加到这些上,我在这方面找不到太多信息。因此,如果其他人成功了,请告诉我如何/是否可以完成。

谢谢。

【问题讨论】:

【参考方案1】:

不,迄今为止不可能(2018 年 10 月 4 日): 根据 Rider 在线错误报告(尚未实现,请随时为https://youtrack.jetbrains.com/issue/RIDER-1256 投票),目前尚未解决。

【讨论】:

【参考方案2】:

上述问题现已解决,但仍不支持 Azure Functions。

但是我确实找到了这个,请注意这似乎只是 Windows,而不是 Mac。

https://github.com/JetBrains/azure-tools-for-intellij/issues/78#issuecomment-439313762

使用 NPM (https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local) 安装 Azure 函数命令行工具

添加一个文件Properties/launchSettings.json,内容如下(根据你的项目量身定做):


  "profiles": 
    "functions": 
      "commandName": "Executable",
      "executablePath": "dotnet",
      "commandLineArgs": "%APPDATA%\\npm\\node_modules\\azure-functions-core-tools\\bin\\func.dll host start --port 7071 --pause-on-error",
      "environmentVariables": 
        "AZURE_FUNCTIONS_ENVIRONMENT": "Development",
        "AzureWebJobsStorage": "UseDevelopmentStorage=true"
      
    
  

运行启动配置文件,并等待功能主机说它正在运行 在 Rider 中,使用 Run | 附加到进程。附加到进程...。找到正在运行的进程 dotnet ... func.dll:

【讨论】:

感谢 Lenny,这在 mac 上也能完美运行(只要确保 dll 的路径正确)

以上是关于从 Mac 上的 Rider 附加到 Azure Functions 的调试器的主要内容,如果未能解决你的问题,请参考以下文章

如何将库源附加到 JetBrains Rider

使用 Rider IDE 附加到 docker-compose 中的容器

使用Azure门户从虚拟机分离数据磁盘

如何从 Rider 调试 WSL2 中的进程?

Rider 无法检测 Ubuntu 上的 .NET 核心安装

如何在本地启动 Azure 功能并通过 launch.json 和 tasks.json 将调试器附加到动态处理?