使用jenkins SVN MSBuil配置.net mvc网站进行持续集成
通过多次搭建Jenkins持续构建环境,终于对Jenkins有了进一步认识,在此把所学所得和大家分享一下,希望可以帮助大家快速掌握Jenkins的核心思想。看了很多文章,最终决定使用Jenkins。以下是我整个配置的记录:
1、安装jenkins、svn和vs2013 for web,并确保机器上安装了.net framework 4.5和.net framework4.0 ,完成后访问http://localhost:8080。
2、进入插件管理,安装MSBuild Plugin、SVN plugin两个插件。配置插件,告诉MsBuild Plugin插件用哪个版本的MSBuild.exe来构建,比如.Net4.0用的是C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe完成构建;将开发机上的C:\Program Files (x86)\MSBuild文件夹直接拷贝到编译机上。


选中“可选插件”页签,然后在过滤栏输入对应的插件名称,查到所需的插件后,直接点击安装即可。

安装完成之后,在已安装页签里面就能够看到安装了的插件,记得安装完插件之后,要重启一下Jenkins。
CMD——services.msc,重启Jenkins服务

3、进入系统设置添加MSBuild和Git配置,如下图

4、新增一个项目,选择构建一个自由风格的软件项目。

5、配置svn信息

6、增加构建步骤,并选择Build a Visual Studio project or solution using MSBuild,

然后填写信息。
MSBuild Build File 是项目文件或者工程文件的名称,简单的说就是需要发布的项目对应的项目文件,这里可以配置成相对路径,把有.git文件目录当成根目录,如MSD_ClearCustomsNew/Uuch.MSD/Uuch.MSD.csproj,注意路径的斜杠是/
Command Line Arguments 是命令行参数
/t:Rebuild 表示每次都重建,不使用增量编译
/property:Configuration=Release 表示编译Release版本,
PublishProfile指定创建的Profile名称(没有扩展名),VS发布项目时的配置文件名称
DeployOnBuild=true 表示启用编译并发布
VisualStudioVersion=14.0 表示VS2013
7、如何发布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路径
8、如何发布VS2013的Web站点 ,首先在VS2013中新建发布配置项,配置好发布方式,比如以“文件系统”方式发布,需要注意的是,目标位置是编译服务器上的路径,在保存后,在项目的Properties/PublishProfiles可以找到这些*.pubxml文件,可以直接在此修改配置。最后提交到源代码管理中。



在保存后,在项目的Properties/PublishProfiles可以找到这些*.pubxml文件

最后配置参数即可:
/t:Rebuild /p:Configuration=Release;PublishProfile=msd;DeployOnBuild=true;VisualStudioVersion=14.0
(构建成功)
PublishProfile指定创建的Profile名称(没有扩展名),配置发布的时候填写的配置文件名称,这里是msd
DeployOnBuild=true 表示启用编译并发布
VisualStudioVersion=11.0 表示VS2012
9、点击构建按钮,进行一键发布

发布完成之后,我们可以去之前配置的那个发布目录下面去查看一下是否发布成功 E:\TestPublish\Msd
或者直接在任务历史中进行查看。
使用jenkins SVN MSBuil配置.net mvc网站进行持续集成的更多相关文章
- 使用jenkins配置.net mvc网站进行持续集成二
上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面. 1.IIS远程发布配置 1.在服务器管 ...
- 使用jenkins配置.net mvc网站进行持续集成三
前两篇讲解了Jenkins的配置和VS远程发布,现在还有一个问题,VS项目远程发布的时候,配置的是覆盖所有文件重生成的,而通常类似于配置文件这种东西,在本地开发环境和测试环境是不一样的.所以我们通常需 ...
- 使用jenkins配置.net mvc网站进行持续集成
最近好久没有更新文章了,因为好久没有写代码了,以至于我不知道同大家分享些什么,刚好,今天突然叫我学习下jenkins每日构建,我就把今天的学习笔记记录下来,这其中很多东西都是公司同事之前调研总结的,我 ...
- jenkins配置.net mvc网站
jenkins配置.net mvc网站 上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面. ...
- 使用jenkins配置.net mvc网站进行持续集成一
最近好久没有更新文章了,因为好久没有写代码了,以至于我不知道同大家分享些什么,刚好,今天突然叫我学习下jenkins每日构建,我就把今天的学习笔记记录下来,这其中很多东西都是公司同事之前调研总结的,我 ...
- 基于TeamCity的asp.net mvc/core,Vue 持续集成与自动部署
一 Web Server(Windows)端的配置 1.配置IIS,重要的是管理服务 1.1 配置FTP(前端NPM项目需要) 该步骤略,如果是在阿里云ESC上,需要开启端口21(用来FTP认证握手) ...
- Jenkins 2.26 发布,可扩展的持续集成引擎
Jenkins 2.26 发布了.Jenkins 主要用于持续.自动地构建/测试软件项目,如CruiseControl与DamageControl,监控一些定时执行的任务.更新内容: Allow Co ...
- Jenkins + svn + maven 构建持续集成环境搭建
Jenkins简介 Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括: ...
- Mac下Jenkins+SVN+Xcode构建持续
1 安装Jenkins Jenkins是基于Java开发的一种持续集成工具.所以呢,要使用Jenkins必须使用先安装JDK. JDK安装 JDK 下载地址 jdk 1.8.png 安装JDK的过程略 ...
随机推荐
- 用PendingIntent传送数据丢失解决办法
当要设置一个闹钟时,可以把数据放在Intent里,再用intent对象生成一个PendingIntent对象,然后用AlarmManager 来邦定PendingIntent对象设置闹钟,具体代码如下 ...
- 【Docker】Segmentation Fault or Critical Error encountered. Dumping core and abort
背景 CentOS7 安装Docker后,load镜像时出现以下错误: Segmentation Fault or Critical Error encountered. Dumping core a ...
- [java]No qualifying bean of type 解决方法
1.错误原因:注解写错 2.原理如下: 现在的spring早就已经摆脱了之前一堆xml配置文件的情况,都是通过注解配置的方式进行依赖注入了,通常情况下,我们会有一个配置类,然后通过Annotation ...
- 控制反转(IOC)模式
控制反转(Inversion of Control):提倡实现松耦合层.组件和类的设计原则,颠倒程序的控制流程.IoC使用分离执行特定问题处理代码的概念: IoC意味着将你设计好的对象交给容器控制,而 ...
- Cache应用/任务Mutex,用于高并发任务处理经过多个项目使用
<?php /** * Class Cache redis 用于报表的缓存基本存储和读写 2.0 * <pre> * Cache::read("diamond.accoun ...
- Redis.RedisNativeClient的方法get_Db 没有实现
C#出现问题:Redis.RedisNativeClient”的方法“get_Db”没有实现 ServiceStack.Redis.RedisNativeClient”的方法“get_Db”没有实现 ...
- iOS UILabel两端对齐的实现(可包括中英文/数字)
- (void)conversionCharacterInterval:(NSInteger)maxInteger current:(NSString *)currentString withLabe ...
- SSH整合报错:Unable to instantiate Action, testAction, defined for 'test' in namespace '/'testAction
报错如下: Struts Problem Report Struts has detected an unhandled exception: Messages: testAction Unable ...
- DIY远程移动图像监测(tiny6410+USB摄像头+motion+yeelink+curl)
看到有博客上采用motion搭建移动图像监测系统,感觉很强大,但大多缺少远程监测能力,大多局限于局域网.OK,笔者手头刚好有一个30W像素的USB摄像头,那么借用yeelink服务,也来DIY一把,哈 ...
- C/C++ 父子进程之间的文件描述符问题
在C程序中,文件由文件指针或者文件描述符表示.ISO C的标准I/0库函数(fopen, fclose, fread, fwrite, fscanf, fprintf等)使用文件指针,UNIX的I/O ...