如何通过通配符模式构建 dotnet
How to dotnet build by wildcard pattern
我有 .sln 文件,其中包含不同文件夹中的一些项目,最初在根文件夹中我有 src 和 Tests 文件夹和 sln文件。结构如下图所示:
当我 运行 dotnet build
它构建所有项目。另一种方法是传递 <PROJECT | SOLUTION>
文件以构建更具体的内容。我只需要根据通配符构建特定项目或从构建中排除一些项目。
当我尝试传递 **/src/*.csproj
或 !Tests/**
时,它不会过滤项目,但会给出来自 MSBuild 的错误:
Microsoft (R) Build Engine version 16.7.0+b89cb5fde for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
MSBUILD : error MSB1009: Project file does not exist.
Switch: **/src/*.csproj
有没有办法根据通配符模式构建项目?
我找不到任何允许使用 dotnet build
通过某种模式准确构建项目的参数。根据 reference.
可以为 dotnet test
这样做
为了为 dotnet build
做类似的事情,我可以用 powershell 实现我想要的:
dir "*.csproj" -Recurse | %{dotnet build $PSItem.FullName}
我有 .sln 文件,其中包含不同文件夹中的一些项目,最初在根文件夹中我有 src 和 Tests 文件夹和 sln文件。结构如下图所示:
当我 运行 dotnet build
它构建所有项目。另一种方法是传递 <PROJECT | SOLUTION>
文件以构建更具体的内容。我只需要根据通配符构建特定项目或从构建中排除一些项目。
当我尝试传递 **/src/*.csproj
或 !Tests/**
时,它不会过滤项目,但会给出来自 MSBuild 的错误:
Microsoft (R) Build Engine version 16.7.0+b89cb5fde for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
MSBUILD : error MSB1009: Project file does not exist.
Switch: **/src/*.csproj
有没有办法根据通配符模式构建项目?
我找不到任何允许使用 dotnet build
通过某种模式准确构建项目的参数。根据 reference.
dotnet test
这样做
为了为 dotnet build
做类似的事情,我可以用 powershell 实现我想要的:
dir "*.csproj" -Recurse | %{dotnet build $PSItem.FullName}