【发布时间】:2021-02-28 17:32:33
【问题描述】:
我们最近更新了我们的构建服务器以使用 Visual Studio 16.8.1 和 Xamarin.iOS 14.4.1.3,并且在之前运行的 MSBuild 命令中遇到了问题。
为了记录,我们在这里构建了一个 Xamarin Forms 解决方案并以 iOS 为目标。
命令是:
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\msbuild" MySolution.sln /p:Configuration="AppStore" /p:Platform="iPhone" /p:ServerAddress="" /p:ServerUser=""
我已尝试搜索它报告的特定错误消息(如下),但到目前为止我还没有找到任何有用的信息。
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(230,3):错误 MSB4044:“GetMinimumOSVersion”任务未指定值为所需的参数“SdkVersion”。
更新
经过进一步挖掘,我相信我已经将错误的根源追溯到Xamarin.Shared.props 中未设置的这些行。
<!-- SdkVersion -->
<_SdkVersion Condition="'$(_PlatformName)' == 'macOS'">$(MacOSXSdkVersion)</_SdkVersion>
<_SdkVersion Condition="'$(_PlatformName)' != 'macOS'">$(MtouchSdkVersion)</_SdkVersion>
我无法找出设置 MtouchSdkVersion 的原因以及未设置它的原因。上面引用部分的评论指出:
有时我们会为 Xamarin.iOS 和 Xamarin.Mac 项目使用不同的变量名称。这里我们尝试统一这些变量
会不会是这种统一改变了以前有效的东西的行为?
【问题讨论】:
标签: visual-studio xamarin xamarin.ios msbuild teamcity