MonoDevelop 的续集dotdevelop
DotDevelop 是一个跨平台的 .NET 集成开发环境(IDE),它原本是 MonoDevelop 的分支项目,这个项目更侧重于 Linux 支持和 GTK3 升级,github:https://github.com/dotdevelop/dotdevelop[1]。MonoDevelop 是一个开源的跨平台 C# 开发工具,而 DotDevelop 则是在此基础上进行改进和扩展的一个新版本。
DotDevelop 项目一直维持着活跃的小型技术社区,并且随着微软宣布关闭 Mac 版 Visual Studio IDE受到更多关注。此外,有开发者正在努力使其与最新的 Linux 版本和 .NET Core 版本兼容,值得注意的是,尽管 DotDevelop 是基于 MonoDevelop 的复刻版本,但它在功能上进行了许多改进和扩展。例如,它使用 Gtk 来提供全功能的集成开发环境(IDE)。同时,GitHub 上也有相关的镜像项目来支持其持续开发。
DotDevelop 使用的调试器是三星的的.NET Core调试器netcoredbg[2],这是Lex li 在2019年通过修改Samsung调试器解决了这些问题,他写了一篇文章详细描述了这个过程:Samsung .NET Core Debugger and MonoDevelop[3]。Lex li还写了几篇Monodevelop 相关的文章:
netcoredbg 是一个三星开源的用于调试.NET Core应用程序的工具。它允许开发者在本地计算机上进行调试,特别是在没有互联网连接的情况下查阅和使用相关文档。此外,netcoredbg 支持多种操作系统,例如Linux,用户可以通过下载相应的包并解压来安装该工具。 它通过与VSCode调试协议的参考实现,使得开发者能够更方便地进行调试操作。此外,netcoredbg 还可以与Windows调试框架结合使用,在.NET进程内直接调用以进行深入的代码执行步骤分析。
netcoredbg 是一个功能强大的调试工具,适用于.NET Core应用程序的开发和维护过程中,帮助开发者更好地理解和解决程序中的问题。
如何使用netcoredbg与VSCode进行调试?
要在VSCode中使用netcoredbg进行调试,你需要按照以下步骤进行配置:
安装必要的插件和工具:
- 首先,确保你已经安装了Visual Studio Code,并且已经安装了.NET Core SDK。
- 在VSCode中,你需要安装一些必要的扩展,例如C#扩展。这些扩展可以帮助你更好地编写和调试C#代码。
配置launch.json 文件:
- 打开你的项目根目录下的
.vscode
文件夹,如果不存在则需要手动创建。 - 创建一个名为
launch.json
的文件。这个文件定义了如何启动和调试你的应用程序。 - 在
launch.json
文件中,你可以指定调试器的类型为netcoredbg
,并设置其他相关的调试选项,如断点、条件断点等。
- 打开你的项目根目录下的
启动netcoredbg调试器:
- 使用命令行启动netcoredbg调试器。可以通过在终端中输入
netcoredbg --server=port_num
来启动调试器监听指定的TCP/IP端口(如果不指定,默认使用TCP 4711)。 - 确保你的VSCode配置正确指向了这个调试器实例。
- 使用命令行启动netcoredbg调试器。可以通过在终端中输入
运行和调试你的应用程序:
- 在VSCode中,通过点击左下角的“运行”按钮或者按快捷键
F5
来启动调试会话。 - VSCode将自动连接到netcoredbg调试器,并开始执行你的应用程序。你可以设置断点、查看变量值、单步执行代码等操作
- 在VSCode中,通过点击左下角的“运行”按钮或者按快捷键
多年来,调试工具已经发展成为开发工具箱中不可或缺的一部分。有一篇文章《使用 nvim-dap 在 Neovim 中调试 C#》[6]中,详细的介绍了如何在 Neovim 中为 .NET 代码配置调试体验。
相关链接:
- [1]dotdevelop: https://github.com/dotdevelop/dotdevelop
- [2]三星的的.NET Core调试器netcoredbg:https://github.com/dotdevelop/netcoredbg
- [3]Samsung .NET Core Debugger and MonoDevelop:https://docs.lextudio.com/blog/samsung-net-core-debugger-and-monodevelop-80a6ea4bcab3
- [4]关于 MonoDevelop 源码许可的总结:https://docs.lextudio.com/blog/monodevelop-source-code-licensing/
- [5]MonoDevelop 的终结:https://docs.lextudio.com/blog/the-end-of-monodevelop-80b383dab34b
- [6]使用 nvim-dap 在 Neovim 中调试 C# : https://aaronbos.dev/posts/debugging-csharp-neovim-nvim-dap
欢迎大家扫描下面二维码成为我的客户,扶你上云