web-dev-qa-db-fra.com

Code Visual Studio: Impossible de trouver la "génération" preLaunchTask?

J'ai créé une nouvelle application .NET Core avec la commande:

dotnet new console -o test

Lorsque j'essaie de l'exécuter dans le débogueur de code Visual Studio, je reçois:

Could not find the preLaunchTask 'build'?

Visual Studio Code a généré ces fichiers pour moi:

tasks.json:
{
    // 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"
        }
    ]
}

et

launch.json
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>",
            "args": [],
            "cwd": "${workspaceRoot}",
            "stopAtEntry": false,
            "console": "internalConsole"
        },
        {
            "name": ".NET Core Launch (web)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>",
            "args": [],
            "cwd": "${workspaceRoot}",
            "stopAtEntry": false,
            "launchBrowser": {
                "enabled": true,
                "args": "${auto-detect-url}",
                "windows": {
                    "command": "cmd.exe",
                    "args": "/C start ${auto-detect-url}"
                },
                "osx": {
                    "command": "open"
                },
                "linux": {
                    "command": "xdg-open"
                }
            },
            "env": {
                "ASPNETCORE_ENVIRONMENT": "Development"
            },
            "sourceFileMap": {
                "/Views": "${workspaceRoot}/Views"
            }
        },
        {
            "name": ".NET Core Attach",
            "type": "coreclr",
            "request": "attach",
            "processId": "${command:pickProcess}"
        }
    ]
}

Mon problème ressemble à celui-ci , mais dans mon cas, il n'y a aucune discordance entre les noms dans launch.json et tasks.json pour la preLaunchTask, la réponse ne s'applique donc pas dans ce cas. J'utilise Visual Studio Code version 1.11.2 et .NET Core 1.1 (versions les plus récentes à compter de la création de ce message).

J'ai essayé la même chose sur une machine Windows et un Mac avec le même problème. Si je fais les commandes "dotnet restore" et "dotnet run", le code s'exécute sans problème, mais j'obtiens toujours la même erreur: "Impossible de trouver le 'build' preLaunchTask '"

14
OlavT

Pour moi, le redémarrage de VS Code après la création des fichiers tasks.json et/ou launch.json fonctionne.

Notez également que vous devez mettre à jour les paramètres "program" dans launch.json avec le chemin d'accès aux dll.

15
Set

Changez tasks.json comme ci-dessous.

tasks.json
{
    // See https://go.Microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "command": "",
    "args": [],
    "tasks": [
        {
            "label": "build",
            "command": "dotnet",
            "type": "Shell",
            "args": [
                "build"
            ],
            "options": {
                "cwd": "${workspaceRoot}"
            },
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "shared"
            },
            "problemMatcher": "$msCompile"
        }
    ]
}
2
Ali Dehqan

Cela a déjà été abordé dans master et sera disponible dans la prochaine version. La réouverture de VS Code sur le dossier devrait aider à résoudre le problème.

0
Dirk Bäumer

Juste un mot de prudence- 

Si workspaceFolder n’est pas au même niveau que par ex. le dossier d'application tasks.json ne sera pas créé et vous obtiendrez toutes les erreurs ci-dessus. J'ai créé un sous-dossier après avoir ouvert le projet et obtenu toutes les erreurs ci-dessus - toutes corrigées après l'exécution du débogage à partir du bon dossier - Cela pourrait expliquer l'effet de la relance du code de VS.

0
ashtheman