
.NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统...
开源且社区活跃,拥有丰富的插件资源。 支持多种开发环境,包括.NET。 操作简单,适合快速上手。 提供图形化的管理界面,便于操作。 实现自动化测试:集成NUnit测试框架,自动运行单元测试。 实现持续交付(CI/CD):集成Docker容器化技术,实现自动化部署到生产环境。
发布日期:2021-05-28 16:23:56
浏览次数:31
分类:精选文章
本文共 2214 字,大约阅读时间需要 7 分钟。
_NET 持续集成与自动化部署之路:以Jenkins为例
作为一名从事多年.NET开发工作的技术人员,我深深地感受到传统软件开发流程中的痛点。每次发布都需要手动部署多个系统,测试流程繁琐,且存在人为错误的风险。为了解决这些问题,我决定探索持续集成(CI)和自动化部署的解决方案,最终选择了Jenkins作为我们的工具。
本文将详细介绍如何通过Jenkins构建一个.NET应用程序的持续集成与自动化部署系统。本文将分为几个关键步骤:Jenkins安装与配置、源代码管理、程序编译、以及程序发布。
一、初识Jenkins
Jenkins是一个开源的持续集成工具,基于Java开发,广泛应用于软件开发的各个阶段。它的主要职责是监控和管理持续集成流程,自动化构建、测试和部署。
Jenkins的优势
二、Jenkins安装与配置
1. 安装Jenkins
下载Jenkins窗口版本 scantest插件:
- 从Jenkins官网下载对应操作系统的安装包。 -安装完成后,默认会安装一个Java虚拟机(JVM)。
- 建议安装JDK 8以上版本,因为Jenkins需要相应的Java环境支持。
2. 配置Jenkins
- 启动Jenkins服务,打开浏览器,访问
http://localhost:8080
。 - 按照提示完成基本配置,如设置管理员账号。
三、源代码管理
1. 安装SVN插件
通过Jenkins管理插件,搜索并安装Subversion插件。
- 打开Jenkins管理页面,进入插件管理,将
Subversion
插件添加到Jenkins根源工件中。
2. 配置项目源代码管理
新建一个自由风格的软件项目,进入项目配置,选择使用SVN作为源代码管理工具。
- Repository URL:填写SVN服务器路径(如:
https://127.0.0.1:9666/VisualSVNServer
)。 - Credentials:配置SVN用户名和密码。
- Ignore externals:配置忽略外部引用(如第三方依赖包存放在其他仓库)。
- Additional Credentials:配置引用的外部仓库信息,包括地址和凭证。
四、程序编译
1. 安装MSBuild插件
Jenkins需要支持.NET程序的编译。
- 安装MSBuild插件:通过Jenkins插件管理功能,搜索并安装
Microsoft Build Solution
插件。 - 配置全局工具:在全局工具配置中添加MSBuild插件,确保路径正确(如
C:\Program Files\Microsoft Visual Studio 2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe
)。
2. 项目编译配置
在项目构建步骤中添加MSBuild构建步骤。
- 命令行参数:
/t:Rebuild /p:Configuration=Release /p:VisualStudioVersion=14.0 /p:DeployOnBuild=True;PublishProfile=Test.pubxml
/t:Rebuild
:重建项目。/p:Configuration=Release
:指定生成配置为Release版本。/p:VisualStudioVersion=14.0
:指定目标框架版本。/p:DeployOnBuild=True;PublishProfile=Test.pubxml
:启用发布操作,使用预定义的发布配置文件。
五、程序发布
1. 安装FTP插件
通过Jenkins插件中心安装Publish Over FTP
插件。
- 打开FTP服务,确保FTP端口开启(默认21)。
- 在地址栏输入FTP服务器地址。
2. 配置项目发布
在构建后步骤中添加FTP发布步骤。
- 源文件:选择构建输出目录。
- 远程目录:指定FTP服务器上的目标目录。
- 用户名和密码:填写FTP服务器的凭证。
六、问题与解决方案
在实际操作过程中可能会遇到以下问题:
1. MSBuild版本不当
确保安装了与项目框架匹配的MSBuild版本。
- 如果使用Visual Studio 2017,MSBuild路径为
Program Files\Microsoft Visual Studio 2017\Enterprise\MSBuild\15.0\Bin
。 - 如果使用的是更早的版本,需要相应调整参数。
2. 第三方依赖包引问题
为避免引部依赖包,采用以下方案:
- 方案一:使用NuGet服务器管理内部依赖包。
- 方案二:配置SVN插件的Ignore externals选项,并在插件配置中添加外部引用信息。
七、 viewBox
通过以上步骤,我们已经实现了Jenkins对.NET程序的持续集成与自动化部署。虽然过程中遇到了一些繁琐的问题,但通过仔细配置和调试,问题逐一解决,最终实现了自动化发布的目标。这一过程不仅提高了开发效率,也减少了人为错误的概率。
对于持续集成系统的完善,可以进一步探索以下方向:
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年04月30日 13时10分06秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
GitHub上传时,项目在已有文档时直接push出现错误解决方案
2019-03-11
页面置换算法
2019-03-11
文件系统的层次结构
2019-03-11
减少磁盘延迟时间的方法
2019-03-11
vue(渐进式前端框架)
2019-03-11
权值初始化和与损失函数
2019-03-11
vscode设置eslint保存文件时自动修复eslint错误
2019-03-11
最大半连通子图
2019-03-11
Remove Extra one 维护前缀最大最小值
2019-03-11
GitHub完整记录数据库GHTorrent的下载和安装经验
2019-03-11
Gradle实战四:Jenkins持续集成
2019-03-11
wgcloud运维监控系统错误:防篡改校验错误次数大于10次,不再上报数据
2019-03-11
iOS 开发官方文档链接收集
2019-03-11
vue报错 created hook错误
2019-03-11
HDU - 4109 Instrction Arrangement
2019-03-11
JQuery--手风琴,留言板
2019-03-12
MFC 自定义消息发送字符串
2019-03-12
Linux操作系统的安装与使用
2019-03-12
C++ 继承 详解
2019-03-12
OSPF多区域
2019-03-12