Jenkins搭建.NET自动编译测试与发布环境
本文地址: http://blog.csdn.net/wangjia184/article/details/18365553
操作系统Windows, 确保需要的.NET Framework已经安装
从 http://jenkins-ci.org/下载Windows安装包。
安装后,访问http://localhost:8080 .
Jenkins => Manager Jenkins => Manage Plugins
在Available选项卡中,选中MSBuild Plugin
然后点击安装
安装完后, 切换到 Jenkins => Manager Jenkins => Configure System
找到MSBuild那节,填入 MSBuild的路径
如 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSbuild.exe
然后点击 New Job, 输入任务名称
然后配置好源代码管理,例如SVN
然后到Build节,
MSBuilder Version 为之前配置的 "Version 4.0"
MSBuild Build File 是项目文件或者工程文件的名称
然后就是MSBuild的命令行参数了。
/t:Rebuild 表示每次都重建,不使用增量编译
/property:Configuration=Release 表示编译Release版本,
/property:TargetFrameworkVersion=v4.5表示编译的目标是.NET 4.5
保存后,点击左侧Build Now开始测试一次编译。
如果编译过程中出现错误,需查看Console Output.
一种常见的错误情况是:编译的机器上没有安装Visual Studio, 在编译的过程中可能会引发MSB4019错误. 例如
- error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
对于这种情况,可以将开发机上的C:\Program Files (x86)\MSBuild文件夹之间拷贝到编译机上。
如果成功,则显示 0 Error(s),在编译成功后可以启动单元测试,如果有NUnit的话.
部署的话,可以通过批处理完成, 首先安装 Post build task插件, 与之前MSBuild插件的安装方式一样
然后在Job的配置中,添加post build task
在Log Text那,可以使用正则表达式检测0 Error(s)出现了, 如\b0\s+(Errors)
Script中直接调用磁盘上的批处理文件
补充1.如何发布VS2010的Web站点
如果是发布Web站点,可以直接指定需要发布站点的csproj文件,如
使用如下参数
- /t:ResolveReferences;Compile /t:_CopyWebApplication /p:Configuration=Release /p:WebProjectOutputDir=C:\Jenkins_Publish /p:OutputPath=C:\Jenkins_Publish\bin
其中WebProjectOutputDir是web站点的发布路径;OutputPath是编译输出的dll路径
补充2.如何发布VS2012的Web站点
首先在VS2012中新建发布配置项
配置好发布方式,比如以“文件系统”方式发布,需要注意的是,目标位置是编译服务器上的路径
在保存后,在项目的Properties/PublishProfiles可以找到这些*.pubxml文件
- <?xml version="1.0" encoding="utf-8"?>
- <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <WebPublishMethod>FileSystem</WebPublishMethod>
- <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
- <LastUsedPlatform>Any CPU</LastUsedPlatform>
- <SiteUrlToLaunchAfterPublish />
- <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
- <ExcludeApp_Data>False</ExcludeApp_Data>
- <publishUrl>C:\Jenkins_Publish\DEV_Metadata</publishUrl>
- <DeleteExistingFiles>True</DeleteExistingFiles>
- </PropertyGroup>
- </Project>
可以直接在此修改配置。最后提交到源代码管理中
最后配置参数即可
- /t:Rebuild /p:Configuration=Release;PublishProfile=Jenkins-DEV;DeployOnBuild=true;VisualStudioVersion=11.0
PublishProfile指定创建的Profile名称(没有扩展名)
DeployOnBuild=true 表示启用编译并发布
VisualStudioVersion=11.0 表示VS2012
本文地址: http://blog.csdn.net/wangjia184/article/details/18365553
Jenkins搭建.NET自动编译测试与发布环境的更多相关文章
- Windows2012中Jenkins搭建.NET自动编译测试与发布环境
安装7Zip 下载地址: http://www.7-zip.org/a/7z1602-x64.exe 安装Git 下载地址:https://github.com/git-for-windows/git ...
- Jenkins搭建.NET自动编译发布本地环境
最近在做一个团队项目的时候,用到了自动编译发布部署环境[也可以说是持续集成],于是顺便学习了下这个环境的搭建过程. 持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员 ...
- Jenkins搭建.NET自动编译发布远程环境
继上一篇文章Jenkins搭建.NET自动编译发布本地环境 发布到本地成功后,接下来配置发布到远程环境. Build配置——发布到远程 根据前面VS中发布项目,生成的CustomProfile2 来配 ...
- 一文搭建自己博客/文档系统:搭建,自动编译和部署,域名,HTTPS,备案等
本文纯原创,搭建后的博客/文档网站可以参考: Java 全栈知识体系.如需转载请说明原处. 第一部分 - 博客/文档系统的搭建 搭建博客有很多选择,平台性的比如: 知名的CSDN, 博客园, 知乎,简 ...
- Jenkins 搭建U3D自动发布 IOS
http://www.cnblogs.com/yinghuochong/archive/2013/09/01/3294940.html 1.安装包,工具略过. 2.插件管理 Subversion Pl ...
- Jenkins 搭建U3D自动发布 Android
工具 [u3d相关的PostProcessBuildPlayer,PerformBuild.cs] 1.Jenkins 开源包 Java -jar jenkins.war,参考链接 http://w ...
- Selenium+Python+jenkins搭建web自动化测测试框架
python-3.6.2 chrome 59.0.3071.115 chromedriver 2.9 安装python https://www.python.org/downloads/ (Wind ...
- Jenkins 搭建 .NET FrameWork 持续集成环境
本文不赘述如何安装 Jenkins,如有需要请看之前文章,这里我们主要搭建 .Net 环境.本文是在 Windows 环境下安装的 Jenkins 进行操作 一.安装所需环境 这里我们 ...
- [原]Jenkins(七)---jenkins项目编译测试发布由maven构建的web项目
/** * lihaibo * 文章内容都是根据自己工作情况实践得出. * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/533 ...
随机推荐
- javaweb作业一
作业:Http全称叫什么?有什么特点?端口号是多少?超文本传输协议:(1)遵循请求/响应模型(2)http协议是一种无状态协议,请求/响应完成后,连接会断开.这时,服务器无法知道当前访问的用户是否是老 ...
- .net程序员写业务代码需要注意的地方
代码规范要求1.命名空间规范:dao层的impl实现和接口采用一样的命名空间,到对应文件夹层:IxxDaoContext与其实现类采用顶级命名空间. 2.TableEntity文件夹:所有的实体放到各 ...
- mysql 忽略库同步的坑
使用replicate_do_db和replicate_ignore_db时有一个隐患,跨库更新时会出错. 如在Master(主)服务器上设置 replicate_do_db=test(my.conf ...
- mysql 闪回测试
由于前面出现过几个需求,或者误操作,或者测试,需要我把某张表恢复到操作之前的一个状态,前面在生产中有过几次经历,实在太痛苦了,下面是一张表被误删除了,我的步骤是: 1 用全备恢复整个库(恢复到其他环 ...
- linux 101 hacks 4stat diff ac
stat 命令 stat 命令那个可以用来查看文件或者文件系统的状态和属性.显示一个文件或目录的属性 $ stat /etc/my.cnf File: `/etc/my.cnf' Size: Bloc ...
- centos6编译安装zabbix3.0和中文支持整理文档
编者按: 最近公司部分业务迁移机房,为了更方便的监控管理主机资源,决定上线zabbix监控平台.运维人员使用2.4版本的进行部署,个人在业余时间尝鲜,使用zabbix3.0进行部署,整理文档如下,仅供 ...
- LoadRunner中的IP欺骗的设置以及误区
LoadRunner中的IP欺骗的设置以及误区 最近在忙着部署web性能测试的环境后,对IP欺骗进行设置,特地做个笔记,给自己的学习历程留下点足迹. 一. 什么是IP欺骗? 做什么事首先要问个为什么, ...
- HBase的基础知识
1.HBase(NoSQL:不是关系型数据库)的逻辑数据模型 HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC S ...
- eschop购物实现立即购买和加入购物车
后台=>平台=>商店设置=>购物流程 是否一步购物设置为否 2:修改代码 .js/common.js function addToCartShowDivResponse(result ...
- MVP模型
MVP模型一般要创建三个文件夹:View.Interactor(Model).Presenter 每个部分都有其接口和实现类,就是为了方便回调 这里做一个登陆界面为例子: 接口: Interactor ...