Jenkins构建.net项目

本文共有3093个字,关键词:jenkins

在实习的公司中需要用到Jenkins,用Jenkins实现持续集成,同时可以实现自动化测试和自动化部署。公司的项目是.net写的,所以需要学习一些.net项目的构建插件。

一、安装

  • Windows下安装非常简单,到Jenkins官网下载最新.war包,放到一个文件夹内,如D:\Jenkins
  • cmd命令行进入D:\Jenkins文件夹,运行java -jar jenkins.war
  • 访问localhost:8080就可以打开Jenkins,安装成功。
  • 注意根据命令行提示获取存储初始密码,然后修改密码就可以了,一般在C:Users/userName/.jenkins下。
  • 初始可以什么都不装,后面需要用到什么插件再装。

二、构建.net项目

1.安装源代码管理插件

  • 想要构建一个项目,必须先要有代码。至于用什么代码管理工具,都有相应的插件,如Git,SVN,Mercurial等等。当然你也可以不装,直接把项目文件指向具体的文件夹。
  • 我公司使用的是Mercurial,因此安装的是Mercurial plugin。在系统管理>管理插件>可选插件,找到对应的直接安装就行。
  • 安装完插件需要配置一下,让Jenkins能调用系统已存在的hg工具(这里就是说,你电脑本身需要装有版本管理工具,比如git,tortoiseGit,tortoiseHg等,Jenkins的Mercurial plugin才能调用系统的工具来clone代码)。
  • 配置是在Global Tool Configuration,我这里保持默认的配置就好
    微信图片_20170912234844.png

2.安装MSBuild插件

  • 有了代码,那就需要有像visual studio一样编译代码的工具才行,这时候就需要用到MSBuild插件了。MSBuild是微软的用来编译.net项目的工具,用命令行就可以实现代码的编译,具体大家可以百度一下。
  • 装完插件,然后在 系统管理>Global Tool Configuration下,作如下配置:
    微信图片_20170912235647.png
  • Path to MSBuild我这个配置其实是Vs中的MSBuild,实际上在每台电脑中都是有MSBuild的,在C:\Windows\Microsoft.NET\Framework64\v4.0.30319下。之所以用VS中的MSBuild,只是因为用电脑自带的MSBuild编译版本较高的项目会有一些不支持的错误,所以最好用最新的MSBuild。

装了上面两个插件,其实你应该会发现,Jenkins的插件工作方式其实实际上是调用系统已存在的工具,Jenkins只是负责调用。

3.配置Nuget工具

  • 这是我踩的一个坑,远程仓库一般都不会把引用的dll包括进去,平常在vs中编译,项目中引用的packages,vs会自动下载的,但是在MSBuild的环境下,需要你手动去配置Nuget的包。
  • 这时候就要用到Nuget工具了,先下载nuget.exe
  • 然后把nuget.exe放在一个文件夹就行,我这里直接放在D:\Jenkins里面,稍后我们会用命令行来调用它下载项目引用的packages。

4.新建一个自由风格的软件项目

  • 前面做好了各种准备,就可以开始新建项目来构建了。

(1)我们这里.net项目一般都是选择自由风格,其他的应该是Java项目了。

微信图片_20170913104936.png

  • 配置项可以根据自己需要来勾选,我这里选择丢弃旧的构建
    微信图片_20170913105309.png

(2)源码管理,你装了什么插件就会显示什么插件,none的选项表示直接用目录上的代码。

微信图片_20170913105901.png

(3)构建触发器,指的是什么时候自动触发构建,可以push代码的时候就构建,或者每天特定的时间触发,我这里先都不选。

Build periodically:周期进行构建
例如:0 4 * (每天凌晨4点必须构建一次源码)
Poll SCM:根据SCM软件的版本号,定时检查源码变更。如果有更新,则checkout最新code,然后执行构建动作。
例如:/10 * (每10分钟检查一次源码变化,如果有更新才build)
#### (4)构建,首先是要用Nuget.exe来更新packages包。添加一个Execute Windows batch Command
D:\Jenkins\nuget.exe restore "C:\Users\xxx\.jenkins\workspace\test\MBFC.sln" -NoCache

(5)MSBuild的配置

/m /t:Rebuild /p:Configuration=Release /p:TargetFrameworkVersion=v4.5
微信图片_20170913110742.png

(6)保存设置,立即构建

  • 到这里,返回点击立即构建就可以构建了。构建出错时看下控制台输出的信息,一般都能找到解决办法。
    微信图片_20170913121154.png
  • 后面还会有把编译的文件publish出来,单元测试并显示覆盖率,自动化测试,自动化部署等,还在研究中。

遇到的问题

  • 1.解决方案文件 error MSB5009: 分析解决方案文件中的嵌套项目节时出错。
    这里说明sln的文件有问题,我解决的方法是在解决方案中新建一个项目,然后删除这个项目,重新保存sln文件。

「一键投喂 软糖/蛋糕/布丁/牛奶/冰阔乐!」

fengxianqi

(๑>ڡ<)☆谢谢老板~

使用微信扫描二维码完成支付

版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。
添加新评论
暂无评论