如何在 Travis CI 上构建 Visual Studio 2019 项目?

lad*_*dge 4 travis-ci visual-studio-2019

Travis CI 最近在其构建系统中添加了一个Windows 操作系统选项。不幸的是,预装的软件包仅包含 Visual Studio 2017。

如何在 Travis 上构建 Visual Studio 2019 项目(例如 .Net Core 3.1 和 v142 构建工具项目)?

lad*_*dge 7

使用更新的构建工具的关键是Chocolatey,Windows 包管理器。只要该工具集在 Chocolatey 上可用,您就可以将其安装在您的 Travis VM 上。

对于 .Net Core,这意味着安装dotnetcore-sdk包。

对于 VC++ 构建工具,有Visualstudio2019buildtools包,但请注意,您必须选择加入Microsoft.VisualStudio.Component.VC.Tools.x86.x64功能。语法见下文。Build Tools 组件目录中提供了完整的功能列表。

.travis.yml是 VS 2019 解决方案的完整文件,其中包含一个 C++ 项目、一个 .Net Standard 2.0 项目和一个 .Net Core 3.1 项目。测试项目使用非托管 DLL。

os: windows
language: cpp
env:
  - MSBUILD_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin"
install:
  - choco install visualstudio2019buildtools --package-parameters "--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
  - choco install dotnetcore-sdk
  - dotnet restore
script:
  - export PATH=$MSBUILD_PATH:$PATH
  - MSBuild.exe -p:Configuration=Release -p:Platform=x64 CppProject/CppProject.vcxproj
  - dotnet build --configuration Release
  - dotnet test DotNetProject.Tests/bin/Release/netcoreapp3.1/DotNetProject.Tests.dll
Run Code Online (Sandbox Code Playgroud)