dotnet build 不会创建 Travis CI 所需的“csproj.metaproj”文件

dotnet build does not create `csproj.metaproj` files needed for Travis CI

我刚刚开始使用 Travis CI 在 git hub 上构建项目,但据 Travis build output log Travis 似乎正在寻找 csproj.metaproj 而不是正在创建。我该怎么做:

哪个是更好的解决方案?

我的 travis yml 文件如下所示:

language: csharp
dist: trusty
mono: none
sudo: required
dotnet: 2.0.0
script:
  - ./build.sh --quiet verify
before_install:
  - chmod +x build.sh

我的 build.sh 文件如下所示:

#!/usr/bin/env bash
dotnet restore && dotnet build
dotnet test Code\Shared\ORMS.Shared.SharedKernel\ORMS.Shared.SharedKernel.csproj

编辑:

根据 Tomasz Żmuda 的回答,我的 build.sh 文件现在看起来像:

#!/usr/bin/env bash
dotnet restore
dotnet clean -c Release
dotnet build OpenRMS.sln -c Release

我的 .travis.yml 看起来像:

language: csharp
dist: trusty
sudo: required
mono: none
dotnet: 2.0.0
solution: OpenRMS.sln
branches:
  only:
    - master-net-core
before_script:
  - chmod +x build.sh
  - chmod +x test.sh
script:
  - ./build.sh

this build 开始,这些更改奏效了。

您的脚本即使在普通机器上也无法运行:) 改变它的最简单方法

dotnet build

dotnet build Code/Shared/ORMS.Shared.SharedKernel/

所以你的脚本应该是这样的:

#!/usr/bin/env bash
dotnet restore
dotnet build Code/Shared/ORMS.Shared.SharedKernel/
dotnet test Code/Shared/ORMS.Shared.SharedKernel.UnitTests/

我建议为 dotnet 构建添加一些标志,比如发布构建和程序集版本。检查这个文件: build.sh