• .netcore使用vscode多项目调试


    开发环境:windows    编辑器: Visual Studio Code

    环境安装:

    .Net Core 1.1 SDK     https://www.microsoft.com/net/core#windowscmd

    1.新建一个多项目文件夹multiproject,cmd命令 :mkdir multiproject,也可以用右键添加新建文件夹。(ps:vscode调试控制台也有终端,也可输入cmd命令

    2.在multiproject目录下新建dotnetnewapp控制台项目,在cmd窗口输入

    cd  multiproject

    mkdir dotnetnewapp

    cd dotnetnewapp

    dotnet new

    这样就在multiproject下新建了dotnetnewapp项目。

    3.新建一个类库项目 dotnetnewlib :同样需要切换到目录multiproject下,在cmd窗口输入

    mkdir dotnetnewlib 

    cd dotnetnewlib 

    dotnet new  -t lib

    这样就在multiproject下新建了dotnetnewlib 项目。

    4.在 dotnetnewlib添加calculator.cs文件

    using System;
    
    namespace dotnetnewlib
    {
        public class calculator
        {
            public static int  add(int a,int b )
            {    
                return a + b;
            }
        }
    }

    5.dotnetnewapp引用类库dotnetnewlib。

    (1)在dotnetnewapp目录下修改project.json,添加dotnetlib引用。

    {
      "version": "1.0.0-*",
      "buildOptions": {
        "debugType": "portable",
        "emitEntryPoint": true
      },
      "dependencies": {},
      "frameworks": {
        "netcoreapp1.1": {
          "dependencies": {
            "Microsoft.NETCore.App": {
              "type": "platform",
              "version": "1.1.0"
            },
            "dotnetnewlib":{
               "target":"project",
               "version": "1.0.0"
            }
          },
          "imports": "dnxcore50"
        }
      }
    }

    (2)修改program.cs文件

    using System;
    using dotnetnewlib;
    
    namespace ConsoleApplication
    {
        public class Program
        {
            public static void Main(string[] args)
            {
                
                int result = calculator.add(2,3);
                Console.WriteLine($"Hello World {result}!");
            }
        }
    }

    6.在cmd下编译运行项目。

    (1)编译类库:切换到dotnetnewlib目录,在cmd下输入

    dotnet restore  

    dotnet build

    (2)编译并运行dotnetnewapp项目:切换到dotnetnewapp目录,在cmd下输入

    dotnet restore

    dotnet build

    dotnet run

    可以看到输出:Hello World 5!

    7.用vscode运行dotnetnewapp项目

    打开multiproject文件夹,点击左边的调试菜单,点击设置,选择.net core,可新建launch.json文件,直接点击调试按钮,会提示缺少task.json文件,是否新建,选择新建。

    运行后依然报错。

    需要配置如下:

    launch.json,在.NET Core Launch (console)配置项配置program和cmd为dotnetnewapp项目生成的dll路径和项目路径

    {
                "name": ".NET Core Launch (console)",
                "type": "coreclr",
                "request": "launch",
                "preLaunchTask": "build",
                "program": "${workspaceRoot}/dotnetnewapp/bin/Debug/netcoreapp1.1/dotnetnewapp.dll",
                "args": [],
                "cwd": "${workspaceRoot}/dotnetnewapp",
                "stopAtEntry": false,
                "externalConsole": false
            }

    tasks.json,添加options项,并设置cmd为为dotnetnewapp项目路径

    {
        // See https://go.microsoft.com/fwlink/?LinkId=733558
        // for the documentation about the tasks.json format
        "version": "0.1.0",
        "command": "dotnet",
        "isShellCommand": true,
        "args": [],
        "tasks": [
            {
                "taskName": "build",
                "args": [],
                "isBuildCommand": true,
                "showOutput": "silent",
                "problemMatcher": "$msCompile"
            }
        ],
        "options": {
            "cwd": "${workspaceRoot}/dotnetnewapp"
        }
    }

    继续点击开始调试按钮,可看到调试控制台输出 Hello World 5!

    8.打开dotnetnewapp项目的program.cs文件,发现calculator并没有代码提示,vscode最下边的蓝色的栏目右边有一个switch projects或者是2 projects,点击它。

    上面弹出下拉框,选择project.json dotnetnewapp 。确定后发现代码提示有了。接着就可以添加断点进行调试了。

    最后:附上项目文件截图,可以看到dotnetnewapp/bin/Debug/netcoreapp1.1下面生成了dotnetnewlib.dll和dotnetnewapp.dll

     


    ps:上述内容大部分参考网上资料结合自己总结。原理部分还没研究,有些地方也忽略描述了~

  • 相关阅读:
    windows 环境下 eclipse + maven + tomcat 的 hello world 创建和部署
    使用IntelliJ IDEA 14和Maven创建java web项目
    使用Spring JDBCTemplate简化JDBC的操作
    CSS颜色代码 颜色值 颜色名字大全
    mysql创建数据库命令
    win64位安装python-mysqldb1.2.3
    UVA11426 欧拉函数
    关于gcd的几个问题
    POI2007_zap 莫比乌斯反演
    BZOJ2005 莫比乌斯反演
  • 原文地址:https://www.cnblogs.com/ldybyz/p/6483571.html
Copyright © 2020-2023  润新知