在没有VS 2013的情况下为VS 2013解决方案设置构建

时间:2018-04-26 08:21:02

标签: .net visual-studio-2013 msbuild portable-class-library build-tools

我正在尝试为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>

如何使这个构建工作?我错过了什么?

0 个答案:

没有答案