【发布时间】:2019-09-27 03:28:44
【问题描述】:
我有一个解决方案,主要由 .NET Framework 4.5 项目组成。
最近,我们添加了一个同时针对 netstandard2.0 和 net45 的项目(库)。
这是通过对新库的 .proj 文件进行以下修改来实现的。
这在 VS2019 中构建良好,但在推送到 Azure DevOps(使用 VS2019 代理构建)时失败并出现以下错误。
错误 MSB4041:项目的默认 XML 命名空间必须是 MSBuild XML 命名空间。如果项目是以 MSBuild 2003 格式创作的,请将 xmlns="http://schemas.microsoft.com/developer/msbuild/2003" 添加到元素中。如果项目是以旧的 1.0 或 1.2 格式创作的,请将其转换为 MSBuild 2003 格式。
谁能给点建议?
编辑 1:
这是我的 YAML...
PublishProfile: 'VSORelease'
steps:
- task: VSBuild@1
displayName: 'Build solution Retailer/Retailer.sln'
inputs:
solution: Retailer/Retailer.sln
vsVersion: 16.0
msbuildArgs: '/p:DeployOnBuild=true /p:PublishProfile="$(PublishProfile)"'
platform: '$(BuildPlatform)'
configuration: '$(BuildConfiguration)'
看来(即使我可以在构建管道中选择 VS2019 作为选项)... Visual Studio 2019 在 Azure DevOps 上不可用?
[警告] 未找到 Visual Studio 版本“16.0”。回退到版本“14.0”。
知道如何让它工作吗?
【问题讨论】:
-
您是否使用了正确的托管构建代理?您应该使用 VS2019 的 Hosted Windows 2019,检查您的构建定义实际使用的队列?
-
这是我发现并修复的问题。欢迎您添加答案,我会接受。
标签: msbuild azure-devops visual-studio-2019