sev*_*rin 4 c# .net-core visual-studio-code
将我的 .NET Core 项目移至解决方案中的子文件夹后,我无法再使用 VS Code 对其进行调试。
如果我移动tasks.json到launch.json项目文件夹并打开 VS Code,我就可以进行调试,但我希望能够在 VS Code 中打开整个解决方案。
我收到的错误消息是这样的:
MSBUILD : error MSB1003: Specify a project or solution file. The current working directory does not contain a project or solution file.
该错误似乎表明我的任务运行程序无法再找到我的项目,因此我尝试将其添加到tasks.json:
{
"version": "0.1.0",
"command": "dotnet",
"isShellCommand": true,
"args": [],
"tasks": [
{
"taskName": "build",
"args": [ ],
"isBuildCommand": true,
"showOutput": "silent",
"problemMatcher": "$msCompile"
}
],
// My addition
"options": {
"cwd": "${workspaceRoot}/myProjectFolder"
}
}
Run Code Online (Sandbox Code Playgroud)
这样做我可以启动任务,但随后出现以下错误:
Exception thrown: 'System.IO.FileNotFoundException' in
Microsoft.Extensions.Configuration.FileExtensions.dll
Run Code Online (Sandbox Code Playgroud)
如何配置 .NET Core 调试器才能运行驻留在子文件夹中的项目?
小智 6
问题是你的tasks.json,你应该将你的子文件夹复制.vscode/tasks.json到父目录中。
当您tasks.json从父目录创建时,它会tasks.json像您的tasks.json示例一样。
但是如果你复制tasks.json子文件夹中创建的内容它应该是这样的:
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/<change to your subfolder>/<your project>.csproj"
],
"problemMatcher": "$msCompile"
}
]
}
Run Code Online (Sandbox Code Playgroud)
所以有一个.csproj文件,它在错误中说。
| 归档时间: |
|
| 查看次数: |
7850 次 |
| 最近记录: |