如何通过命令行 msbuild 编译项目
本文告诉大家如何通过 msbuild 编译一个项目,通过命令行编译可以输出更多的编译信息,可以用来调试自己写的编译相关方法,可以看到是哪个文件编译失败
在开始菜单可以找到 VisualStudio 的安装文件夹,基本上开发者命令行的英文名叫 Developer Command Prompt 中文名是开发者命令行
打开之后默认是 C 盘的一个路径,假如自己的项目所在文件夹是 D:\lindexi\github
需要先通过 cd 将命令行的工作路径修改为当前需要编译的路径,通过下面命令可以从 C 盘到代码文件夹
> cd /d 代码所在文件夹
首先需要还原所有安装的 Nuget 包,此时建议将 Nuget 这个程序加入到环境变量,可以从 官网 下载最新版本的 Nuget 程序,如我下载了 5.0 的版本,我将下载的 Nuget 程序放在了 D:\lindexi\
文件夹,将 Nuget 下载的程序修改文件名是 Nuget.exe 然后将 D:\lindexi\nuget.exe
加入到环境变量
在 Windows 将某个文件夹加入到环境变量的方法是右击此电脑属性(如果现在还有开发者使用的是 Windows7 那么请自己百度如何将某个文件夹添加到环境变量)点击高级系统设置
在系统属性页面点击高级,找到环境变量按钮
在系统变量里面找到 Path 变量,双击就可以编辑,建议只修改用户的变量
在最后一行空白的地方双击一下,输入需要添加到环境变量的文件夹,如我上面的 D:\lindexi
文件夹
添加完成之后如果想要命令行生效,需要先将命令行关闭,再重新打开,进入需要编译的文件夹
通过 Nuget 还原请使用下面代码
> nuget restore
这个命令可以在 sln 文件所在的文件夹输入,也可以在 nuget.package 文件所在的文件夹里面输入,一个是还原所有项目的 nuget 一个是还原一个项目的
如果有多个 sln 文件,如 a.sln 和 b.sln 请在 Nuget restore 的最后添加上需要还原的文件
> nuget restore a.sln
然后通过 msbuild 还原新的项目格式的引用
> msbuild -t:restore
还原之后通过 msbuild 编译
> msbuild
通过 msbuild 编译默认是不需要添加任何参数,因为所有参数都在 sln 文件
如果需要特殊指定,如编译 UWP 项目请看 win10 uwp 使用 msbuild 命令行编译 UWP 程序
如编译为 release 可以使用 -p
修改 configuration 属性为 release 编译
msbuild -p:configuration="release"
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系。
相关文章
- 怎样在Linux命令行下杀死一个进程
- Linux中如何通过命令行访问Dropbox
- 0144-Go-命令行子命令
- java 命令行运行时报错:找不到或无法加载主类
- 【python】命令行输出颜色
- finalshell 很强大,可以命令行,也可以文件操作
- MDT部署中命令行脚本的使用。
- IRC命令行帮助指南,揭开IRC的神秘面纱
- 安装gitbook sourcetree或命令行推送数据到Githup上 No “xxx“ file (or is ignored) which查看软件安装目录 operation not permi
- 全网详解 .npmrc 配置文件:比如.npmrc的优先级、命令行,如何配置.npmrc以及npm常用命令等
- 烽火2640路由器命令行手册-13-VPDN(L2TP,PPTP,PPPOE)配置命令
- 烽火2640路由器命令行手册-09-拨号配置命令
- 烽火2640路由器命令行手册-06-组播协议配置命令
- (二)Flutter 搭建 Android Stduio +win10和 VsCode +win10和基础的cmd命令行
- 惊艳的cygwin——Windows下的Linux命令行环境的配置和使用
- .NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]
- 【C 语言】文件操作 ( 写文本文件 | Qt 创建 C 语言命令行项目 )
- 区块链开发(三)以太坊客户端命令行选项汇总