VS编译命令
2024-09-01 18:51:05
一、前言
由于公司要求项目需要走CI构建平台,抛弃掉之前的人工编译打包方式,所以需要调研一下项目怎么通过命令行编译出产物。
二、准备工作
- 在构建机器上安装vs(本文示例为vs2017)
- 将代码上传版本控制仓库(本文示例为Gitlab),并确保构建机器可以正常访问并下载源代码
- 确保构建机器可以正常编译目标项目,最快捷的方案就是在构建机器上跑一下
- 修改项目的编译配置及平台,例如我设置了Release+CI作为CI构建用的配置,并把输出路径改为了
..\CIResult\
三、编写构建命令
- 找到vs的安装路径,找到devenv.exe,例如
D:\VS2017\Common7\IDE\devenv.exe
- 明确自己需要编译的解决方案的名称,例如:
ABC.sln
- 明确自己需要使用的编译设置,例如前文设置好的:
Release
+CI
- 编写编译命令,例如:
"D:\VS2017\Common7\IDE\devenv.exe" devenv "ABC.sln" /rebuild "Release|CI" /out courtClient.log
- 执行命令,就可以到
..\CIResult\
去获取产物了,如果嫌弃文件夹麻烦,可以在编译完成后再加一句命令WinRAR a -r ABC.zip CIResult\*
来打个压缩包。
四、注意事项
- 如果项目中使用了nuget管理引用的组件,建议把packages文件夹加入源代码仓库中,因为我不知道怎么让vs在编译前自动下载包并还原,只能用这个笨方法了。附上git的文件包含脚本,打开.gitignore文件加上一行
!/packages/*
- 编译的错误日志打在了courtClient.log文件里
五、结束
自己摸索的,也踩了些坑最后总结出的方法,可能不是很合理,希望大佬们如果有更好的方法可以批评指正。
最新文章
- percona-toolkit 之 【pt-online-schema-change】说明
- 常用CSS Reset汇总
- MATLAB代码加密生成.p文件
- Dedecms include\dialog\select_soft_post.php Upload Any Files To The Specified Directory Via Variable Not Initial Flaw Bypass Extension Defence
- jquery easy ui 1.3.4 快速入门(1)
- [原]素数筛法【Sieve Of Eratosthenes + Sieve Of Euler】
- Partitioning by Palindromes
- Android Animation
- Oracle数据库的创建与验证
- css 问题总结
- Python学习笔记2
- 使用nfs作为根文件系统启动,(3)
- Python模拟弹道轨迹
- Linux 用户切换、修改用户名、修改密码
- PHP PC端微信扫码支付【模式二】详细教程-附带源码(转)
- db2 查询表前几行
- Hibernate 再接触 集合映射
- Python数据类型之list和tuple
- cpu中的缓存和操作系统中的缓存分别是什么?
- Mybatis多参数查询映射
热门文章
- 百度全景地图使用时提示flash版本过低 如何处理?
- ThreadLocal深度解析和应用示例
- 领扣(LeetCode)Fizz Buzz 个人题解
- MySQL 1364 错误提示:#1364 - Field ";details"; doesn't have a default value
- 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)
- Mac安装和卸载Mysql
- Java Import的使用
- 工作常用4种Java线程锁的特点,性能比较、使用场景
- python3基础之 字符串切片
- ganglia 客户端部署