无需安装Visual Studio 2013,如何构建VS 2013解决方案?
不用装VS2013,搭建.NET 4.5+Silverlight 5构建环境(Windows Server 2012 R2)
你要搭建的这个构建环境我之前帮朋友处理过类似的,核心就是补全VS2013里负责构建的那些独立组件,不用装整个IDE。结合你的现状,给你整理了关键步骤:
1. 确认Microsoft Build Tools 2013版本
你说已经装了Microsoft Build Tool,但一定要确保是和VS2013匹配的Build Tools 2013——毕竟你的项目是用VS2013开发的,版本不兼容的话,MSBuild根本认不出项目里的旧配置。如果之前装的是其他版本,建议先卸载,再重新安装对应版本的Build Tools 2013。
2. 安装Silverlight 5 SDK
Silverlight项目的构建完全依赖这个SDK,不用装VS里的Silverlight插件,单独装SDK就行。安装后,MSBuild会自动识别Silverlight项目的.targets构建文件,不会再出现找不到Silverlight构建目标的错误。
3. 补上可移植类库(PCL)的构建支持
针对目标是.NET 4.5和Silverlight 5的PCL项目,必须装Portable Library Tools for Visual Studio 2013的独立包——这个工具包会把PCL项目需要的框架引用和构建规则加到系统里,让MSBuild能正确解析PCL的跨框架依赖,不用装整个VS2013。
4. 验证构建是否正常
装完上面的组件后,打开命令提示符或者PowerShell,切换到你的解决方案目录,运行下面的命令测试构建:
msbuild YourSolution.sln /p:Configuration=Release /p:Platform="Any CPU"
要是构建失败,看错误日志找原因:
- 要是提示找不到Silverlight相关的
.targets文件,检查SDK是不是装对了,路径有没有被MSBuild识别(一般安装后会自动加环境变量) - 要是PCL项目报错,就检查Portable Library Tools有没有装对,或者确认PCL的目标框架配置和你本地装的组件匹配
额外提醒
- Windows Server 2012 R2默认可能没开一些.NET相关的系统功能,记得在服务器管理器的“添加角色和功能”里启用
.NET Framework 4.5 Advanced Services,避免一些奇怪的依赖问题 - 如果遇到NuGet包还原失败,单独装个NuGet CLI工具,构建前先跑
nuget restore YourSolution.sln把所有依赖包拉下来
内容的提问来源于stack exchange,提问作者Andrija




