【发布时间】:2013-12-29 09:12:50
【问题描述】:
我最近将一些自定义可移植类库项目添加到构建服务器中构建的应用程序中。构建工作正常,但之后它停止工作并向我显示以下消息:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(983, 5): 警告 MSB3644: 框架的参考程序集 未找到“.NETPortable,Version=v4.0,Profile=Profile136”。
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(1578, 5):警告MSB3270:处理器之间存在不匹配 正在构建的项目架构“MSIL”和处理器 参考架构 "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll", “AMD64”。
错误 CS0234:类型或命名空间名称“Linq”不存在于 命名空间“系统”(您是否缺少程序集引用?)
构建服务器规格:
- Windows Server 2008 R2 标准版
- TeamCity 8.0.4
- .NET 4.5
- Portable Class Library Tools(建议here)
- Silverlight 5 SDK
解决方案是 .NET 4.0 应用程序,可移植项目仅针对 .NET4.0+ e Silverlight 5。
我检查了我的开发机器(Windows 8、Visual Studio 2012)。确实有一个文件夹“C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETPortable\v4.0\Profile\Profile136”(事实上,.NET 4.0 的配置文件高达 158 个)。 然而,在构建机器中,只有最多 131 个配置文件的文件夹。
可移植类库工具是最新的吗?它似乎错过了为最新平台安装配置文件。
更新
我将我的开发机器的“.NETPortable\v4.0\Profile\Profile136”复制到构建服务器,现在应用程序构建成功。我仍然想知道为什么安装便携式类库工具不能开箱即用。
【问题讨论】:
标签: c# .net silverlight teamcity portable-class-library