构建所有 csproj 文件,测试项目除外

Build all csproj files, except Test projects

在 DevOps 中,您可以创建一个 dotnet build 任务,其中 "Path to project(s)" 可以设置为 **/*.csproj 以构建所有项目。

这很好用,但它(显然)也构建了我的 *.Test.csproj 项目。

我发现一些帖子提到了排除模式,所以我尝试按照这些帖子中的方法进行操作,并尝试了以下组合:

**/*.csproj;-**/*.Test.csproj
**/*.csproj;!**/*.Test.csproj

**/*.csproj;-:**/*.Test.csproj
**/*.csproj;!:**/*.Test.csproj

对于所有尝试,我在 DevOps 日志中收到以下错误:

Project file(s) matching the specified pattern were not found.

那么,我如何创建 dotnet build 任务来构建我的所有项目 除了 *.Test.csproj 项目?

这是我一直用来 运行 除了其中一些测试之外的所有测试:

  Test/**/*.csproj
  !**/*.Billing.Test.csproj
  !**/*.Queues.Test.csproj
  !**/*.WidgetDataProvider.Test.csproj

所以出于同样的原因你需要使用:

  **/*.csproj
  !**/*.Test.csproj

据我了解,顺序很重要,所以这行不通:

  !**/*.Test.csproj
  **/*.csproj