给定一个包含共享项目的Xamarin Studio解决方案,以及一个引用共享项目的iOS项目 . 使用xbuild构建解决方案时,如下所示:

xbuild /p:Configuration=Release /p:Platform="iPhone" /target:Build GridVisibilityBug.sln

该构建包含几个警告,如下所示:

/Users/work/.../GridVisibilityBug/GridVisibilityBug.shproj:  warning : Could not find project file /Library/Frameworks/Mono.framework/External/xbuild/Microsoft/VisualStudio/v/CodeSharing/Microsoft.CodeSharing.Common.Default.props, to import. Ignoring.
/Users/work/.../GridVisibilityBug/GridVisibilityBug.shproj:  warning : Could not find project file /Library/Frameworks/Mono.framework/External/xbuild/Microsoft/VisualStudio/v/CodeSharing/Microsoft.CodeSharing.Common.props, to import. Ignoring.
/Users/work/.../GridVisibilityBug/GridVisibilityBug.shproj:  warning : Could not find project file /Library/Frameworks/Mono.framework/External/xbuild/Microsoft/VisualStudio/v/CodeSharing/Microsoft.CodeSharing.CSharp.targets, to import. Ignoring.

当只构建csproj时,我没有得到警告(但是只是构建csproj是不可取的,因为该解决方案包含其他项目):

xbuild /p:Configuration=Release /p:Platform="iPhone" /target:Build iOS/GridVisibilityBug.iOS.csproj

使用已弃用的mdtool构建时,我也没有收到警告:

/Applications/Xamarin\ Studio.app/Contents/MacOS/mdtool -v build "--configuration:Release|iPhone" GridVisibilityBug.sln

我该如何评价此警告?它是无害的,还是有严重缺失的东西?我可以修复警告(引用的文件确实不在给定位置)吗?

由于项目处于较长的发布期,我使用的是较旧的Xamarin版本:

Xamarin Studio
Version 5.10.2 (build 56)
Installation UUID: 09335063-06f8-425b-8e56-2cdecfb3c10c
Runtime:
    Mono 4.2.2 (explicit/996df3c)
    GTK+ 2.24.23 (Raleigh theme)

Apple Developer Tools
Xcode 7.3.1 (10188.1)
Build 7D1014

Xamarin.iOS
Version: 9.4.1.25 (Business Edition)
Hash: 962a050
Branch: master
Build date: 2016-01-29 16:59:11-0500

Operating System
Mac OS X 10.11.6
Darwin Stephans-MacBook-Pro.local 15.6.0 Darwin Kernel Version 15.6.0
    Mon Aug 29 20:21:34 PDT 2016
    root:xnu-3248.60.11~1/RELEASE_X86_64 x86_64

Edit:

最初的例子现在应该更清楚了 . 我使用的示例项目是附加到https://bugzilla.xamarin.com/show_bug.cgi?id=46501的项目 . 它是使用上面提到的Xamarion Studio / Xamarin iOS版本创建的 .

我也能够使用更新的Xamarin版本在系统上重现问题 . 工作流程:通过 File->New->Solution->Xamarin.Forms App 创建新解决方案,仅选择共享项目和iOS . 然后使用上面提到的xbuild命令构建解决方案 . 此系统上的版本: Xamarin Studio 6.1.1, Mono 4.6.1, Xamarin iOS 10.0.1.8, Mac OS X 10.11.6 .

Edit 2:

shproj xml确实导入了警告中提到的文件,并且我们的系统上没有这些文件 . 至少不在预期的位置 . 构建本身虽然有效 . 我的主要问题是如果可以安全地忽略这些警告 .