我正在尝试为Visual Studio 2013中完成的旧解决方案设置构建VM(Windows Server 2012 R2 Datacenter),目标是.NET 4.5。除了标准的.NET项目,它还有Silverlight和Portable库项目。 可移植库的目标是.NET 4.5和Silverlight 5。
我正在尝试设置它而无需安装Visual Studio 2013.
我已经尝试安装.NET 4.5和.NET 4.0,但两者都表示它已经安装完毕。检查。
到目前为止,我已安装:
我的构建脚本工作正常,它是这样的:
%msbuild% "%solution_path%" /t:Rebuild /p:Configuration=%msbuild_configuration% /p:Platform="Any CPU" /clp:ErrorsOnly;WarningsOnly /fl /flp:logfile=%output_file%;Append;verbosity=normal /verbosity:quiet /nologo /m /p:VisualStudioVersion=12.0
脚本正在我的机器上 TM
我得到的第一个错误是: (这是在可移植图书馆项目中报告的,因为它是第一个构建的)
错误MSB4019:导入的项目“C:\ Program Files (86)\的MSBuild \微软\便携式\ V4.0 \ Microsoft.Portable.CSharp.targets” 没找到。确认声明中的路径是 正确,并且该文件存在于磁盘上。
我尝试用/p:VisualStudioVersion=12.0
解决这个问题,但它没有帮助(无论如何我将命令行中的旗帜保留下来)。
我试图通过在C:\Program Files (x86)\MSBuild\Microsoft\Portable
中放置所需的文件来欺骗msbuild。
现在我为同一个可移植的库项目得到了不同的错误:
错误CS0246:类型或命名空间名称'DataMemberAttribute'可以 找不到(你错过了使用指令或程序集 引用?)
这不是唯一的错误。它为找到的每种CLR类型报告错误。
csproj中的可移植库有:
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
如何使这个构建工作?我错过了什么?