zoukankan      html  css  js  c++  java
  • 微软为.NET程序员带来了最优的跨平台开发体验-WSL

    前言

    在前几个Visual Studio Code更新中发现有一个重要得特性,就是nodejs可以使用VS Code在WSL中进行Debug了(WSL是指Win10中的Linux子系统),之前写过一篇文章是使用SSH对Linux环境进行Debug,此时的想法就是如果可以在WSL中直接对程序进行调试的话,那么对于开发人员这项功能将是在Windows中最好连接Linux环境的开发环境了,而且由于Windows子系统的“原理”,所有子系统中的进程将与系统进程运行在物理主机上,所以可以断定调试的“速度”也是非常快速的。

    先决条件

    要想在Visual Studio Code中调试.NET Core程序,并运行在Windows Subsystem for linux(WSL)中,需要一些先决条件,这些条件包括:

    • 需要将Windows更新到最新的创新者版本(版本号为:1709)
    • 在WSL中安装.NET CORE SDK (2.0.2)
    • 最新版本的VS Code和C#扩展 (Microsoft C# extension)

    之所以要更新Windows系统到最新的创新者版本,主要是因为之前版本的Windows不能安装Ubuntu子系统的最新版本。之前的版本为14.04,要想使用新的特性,我们要将Ubuntu子系统升级到16.04版本。

    解决问题

    安装WSL

    接下来我们先使用bash命令,确定一下Windows上安装的Ubuntu子系统的版本:

    ~$ cat /etc/os-release | grep  -i version
    
    VERSION="16.04.2 LTS (Xenial Xerus)"
    VERSION_ID="16.04"
    VERSION_CODENAME=xenial
    
    

    但是如果已经安装过WSL后再升级Windows,那样Ubuntu子秕的版本还会是14.04,所以需要重新安装一下Ubuntu子系统,命令如下:

    lxrun /uninstall /full
    lxrun /install
    

    如果你已经是最新版本的创新者的Windows,此时Ubuntu子系统的版本也将升级到16.04。

    安装.NET CORE SDK

    只需要到https://www.microsoft.com/net/core#linuxubuntu上找到,对应16.04版本安装方式,就可以顺利的安装了,与Ubuntu系统的真机安装体验一致。

    安装调试器

    先要将调试器下载到子系统中运行bash,再运行如下命令:

    sudo apt-get install unzip
    curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v latest -l ~/vsdbg
    

    下载过程可能会很慢长,主要取决于是否FQ。下载后的文件会在当前目录的~/vsdbg/vsdbg。我的下载目录为:/home/maxzhang/vsdbg/vsdbg

    launch.json

    添加调试启动的配置:

    {
        "name": ".NET Core WSL Launch",
        "type": "coreclr",
        "request": "launch",
        "preLaunchTask": "build",
        "program": "/mnt/f/dotnetcoreapps/DebugOnWSL/DebugOnWSL/bin/Debug/netcoreapp2.0/DebugOnWSL.dll",
        "args": [],
        "cwd": "/mnt/f/dotnetcoreapps/DebugOnWSL/DebugOnWSL",
        "stopAtEntry": false,
        "console": "internalConsole",
        "pipeTransport": {
            "pipeCwd": "",
            "pipeProgram": "C:\Windows\System32\bash.exe",
            "pipeArgs": [
                "-c"
            ],
            "debuggerPath": "/home/maxzhang/vsdbg/vsdbg"
        }
    }
    

    具体路径需要按自己的需要进行修改,然后就可以按F5进行调试了。期待VS中也能拥有这样的开发体验。

    推广

    GitHub:https://github.com/maxzhang1985/YOYOFx 如果觉还可以请Star下, 欢迎一起交流。

    .NET Core 开源学习群:214741894

  • 相关阅读:
    免费的视频、音频转文本
    Errors are values
    Codebase Refactoring (with help from Go)
    Golang中的坑二
    Cleaner, more elegant, and wrong(msdn blog)
    Cleaner, more elegant, and wrong(翻译)
    Cleaner, more elegant, and harder to recognize(翻译)
    vue控制父子组件渲染顺序
    computed 和 watch 组合使用,监听数据全局数据状态
    webstorm破解方法
  • 原文地址:https://www.cnblogs.com/maxzhang1985/p/8001782.html
Copyright © 2011-2022 走看看