2016-11-18 47 views
2

我试图解决的输出之间的差异2:单声道/ XBuild固定语言(固定区域性)与VS2015的MSBuild的中性语言

  • 的Windows 8 /的Visual Studio 2015/MSBuild的 和
  • Debian的8.2 /单声道版本4.6.2.0/XBuild引擎版本14.0

这些问题两者都是在这个例子回购这里详细:https://github.com/DavidACL/SatelliteAssemblyCustomAttributesIssue/tree/master 该项目是一个简单的C#/。NET 4.5应用demoing的问题(包括XBuild输出)。

的第一个问题,题为Mono Missing Satellite Assembly Custom Attributes and Version,我相信,通过候审的PR https://github.com/mono/mono/pull/3463解决,并在此编译器错误,指出https://bugzilla.xamarin.com/show_bug.cgi?id=12671

但是,我无法找到我的第二个问题的任何信息:

当通过右键单击.exe或.dll并查看详细信息选项卡来查看语言属性时,MSBuild和XBuild输出之间似乎有区别。如果你有一个卫星组件,还有一个更大的区别。

的MSBuild:正如所预期的,主要组件具有细节标签语言(技术上块首如果DLL/EXE在Visual Studio打开,并且检查值)=不确定语言。

Simialarly,所述的MSBuild去DE卫星组件的.dll具有细节标签语言=语言中性

组装:

enter image description here

卫星程序集:

enter image description here


单声道/ XBuild:主组件具有细节标签语言=不变语言(不变国家或地区),和DE-DE卫星组件具有细节标签语言=德国(德国)

组装:

enter image description here

卫星总装:

enter image description here

虽然我明白,单来代替中性的使用语言特点不变默认情况下,有没有什么办法可以将其转换为MSBuild和XBuild之间的匹配(可能通过配置步骤)? MSBuild不会将卫星程序集的语言环境传播到详细信息选项卡的语言字段,而XBuild是否有这个原因?同样,这种差异可以通过任何配置步骤来消除?

回答

1

不要期望很快就会出现复杂的xbuild错误修正,因为来自微软的MSBuild已经开源,并且Xamarin团队已经完成some work以使其跨平台(例如,它已经运单的安装程序适用于Mac)内。

这是唯一的时间,直到Debian开发人员的问题(或贡献者,像你?)封装它(xbuild变得过时了)。在此期间,你可以建立它自己,并尝试一下。