如何在VS Code中指定启动项目?

27

如何在 VS Code 中指定启动项目?

背景:

在 Visual Studio 中,我右键单击解决方案资源管理器中的一个项目并将其设置为启动项。

然而,我不清楚如何在 VS Code 中完成此操作。

注意:

我最近在 VS Code 的目录中添加了一个 WebAPI 项目。

2个回答

21

也许这个问题值得一个更好的回答。所以让我解释一下,在 Visual Studio Code 中,您必须在 launch.jsontasks.json 文件中设置启动项目。

以下是一个小的详细介绍:

  1. 选择一个根项目文件夹(例如:D:/anypath/myrootfolder)

  2. 在根文件夹中创建两个项目文件夹
    2.1 D:/anypath/myrootfolder/project1
    2.2 D:/anypath/myrootfolder/project2

  3. 使用 cmd 创建两个控制台应用程序(我使用 .netcore 2.0)
    3.1 使用 cmd 进入 project1project2 文件夹(命令:cd -文件夹名-)
    3.2 对于这两个文件夹中的每一个,请执行命令:dotnet new console

  4. 使用 Visual Studio Code 打开根项目文件夹

  5. 将以下的 launch.jsontasks.json 添加到 .vscode 文件夹中(通常在 VS Code 中单击调试按钮后将生成 .vscode 文件夹)
    了解更多信息,请访问:https://code.visualstudio.com/docs/editor/debugging

示例launch.json文件:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch Project1",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceRoot}/project1/bin/Debug/netcoreapp2.0/project1.dll",
            "args": [],
            "cwd": "${workspaceRoot}/project1",
            "stopAtEntry": false,
            "console": "internalConsole"
        },
        {
            "name": ".NET Core Launch Project2",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceRoot}/project2/bin/Debug/netcoreapp2.0/project2.dll",
            "args": [],
            "cwd": "${workspaceRoot}/project2",
            "stopAtEntry": false,
            "console": "internalConsole"
        }
    ]
}

示例 tasks.json 文件:

{
    "version": "0.1.0",
    "command": "dotnet",
    "isShellCommand": true,
    "args": [],
    "tasks": [
        {
            "taskName": "build",
            "args": [
                "${workspaceRoot}/project1/project1.csproj"
            ],
            "isBuildCommand": true,
            "problemMatcher": "$msCompile"
        },
        {
            "taskName": "build",
            "args": [
                "${workspaceRoot}/project2/project2.csproj"
            ],
            "isBuildCommand": true,
            "problemMatcher": "$msCompile"
        }
    ]
}

别忘了我使用的是 .netcore 2.0。如果你使用另一个目标框架,当然需要自定义上述示例文件。

最终,在播放(调试)按钮的右侧,您现在应该看到两个项目:
.NET Core Launch Project1
.NET Core Launch Project2

这对我和我的目的很有效...


我有一个在Visual Studio环境中创建和构建的项目。这个答案对于将项目迁移到VS Code环境非常有用。非常感谢。 - ddagsan
有两个名为“build”的任务。选定的项目如何知道使用哪一个? - StayCool

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接