基于Jenkins搭建.NET FrameWork持续集成环境

所属分类: 软件编程 / java 阅读数: 72
收藏 0 赞 0 分享

这里我们主要搭建 .Net 环境。本文是在 Windows 环境下安装的 Jenkins 进行操作

一、安装所需环境

这里我们需要安装以下安装包:

1. .NET Framework 运行环境;

2.MSBuild,虽然平时我们使用 Visual Studio 都是图形界面编译、发布程序,但实际上 Visual Studio 是去调用 MSBuild 来进行各种操作的,所以我们要想让 Jenkins 也能自动编译代码,也要为它准备一套 MSBuild。

3. .NET Framework 4.6.1 开发人员包(Developer Pack),在过去称为Targeting Pack,里面包含了一堆程序集。像是早期版本的 Visual Studio 2013,发布之时并没有 .NET Framework 4.6.1,要想让它支持就需要安装这个开发人员包。如果不安装的话,后期编译 4.6.1 的程序时会提示找不到 System.Object、System.Attribute 程序集的错误。4.6.1 的开发人员包包含了 4.0、4.5、4.6Targeting Pack 的内容,安装 4.6.1 的包就不需要安装 4.0 其他版本的包了。另外如果需要中文支持,需要先安装英文版,再安装中文语言包。

4.NuGet 的控制台程序,在编译程序之前,先需要使用 NuGet 进行包还原。这个软件不需要安装,放在一个固定的位置就行,例如放在 D:\NuGet 下。

也可以直接安装 Visual Studio 省去以上安装包的安装

我们这里选择的是安装 Visual Studio 2017

二、安装 MSBuild 插件

进入 Jenkins 的插件管理页面,安装 MSBuild 插件,

手动安装地址为:https://wiki.jenkins-ci.org/display/JENKINS/MSBuild+Plugin

也可以在:系统设置--插件管理--可选插件中查找MSBuild

我们这里已经安装完成

安装好之后,之后进入 “Global Tool Configuration”(全局工具配置) 界面

在打开的页面里找到“MSBuild”选项,先点击“MSBuild 安装”,再点击“新增 MSBuild” 按钮,

Path to MSBuild 填写你MSBuild的安装路径,

由于我这里安装的是 Visual Studio 2017 所以位置如下

附上 MSBuild 的默认安装路径

32位C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe64位C:\Program Files (x86)\MSBuild\14.0\Bin\amd64\MSBuild.exe

三、Jenkins Job 配置

准备好了运行环境和 Jenkins 插件,我们新建一个 Job 试一试。我们公司使用的是GitLab,所以我会从 GitLab拉取代码,使用SVN等仓库也大同小异,这里就略过了。

1. 还原 NuGet 程序包

我们需要在“构建”一栏中,新增一个“Execute Windows batch command”(执行批处理命令)步骤,用来进行 NuGet 包还原

"C:\Users\nuget\nuget.exe" restore .\YourSolutionName.sln

首先是指定 nuget.exe 的路径,然后使用 restore 命令,对当前目录下的YourSolutionName.sln 解决方案文件进行包还原。大家根据自己实际情况进行修改即可。

2. 配置 MSBuild 编译参数

依然是在“构建”一栏,新建一个“Build a Visual Studio project or solution using MSBuild”(使用 MSBuild 生成 VS 项目或解决方案)步骤


从上往下,依次是

  • 选用的 MSBuild 版本
  • 目标项目或解决方案文件的路径+文件名
  • MSBuild 参数

这里主要讲一下“Command Line Arguments”的配置,更全面的 MSBuild 文档可以参阅 MSDN:https://msdn.microsoft.com/zh-CN/library/dd393574.aspx

我希望生成一个 ASP.NET MVC 项目,并发布到文件系统中,主要用到:

  • /t:Rebuild 重新生成
  • /p:Configuration=Release Release 生成模式
  • /p:VisualStudioVersion=14.0 指定子工具集(https://msdn.microsoft.com/zh-cn/library/bb383796.aspx)版本,不设置会报错

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

Javaweb 鼠标移入移出表格颜色变化的实现

这篇文章主要介绍了Javaweb 鼠标移入移出表格颜色变化的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Java 实现图片压缩的两种方法

这篇文章主要介绍了Java 实现图片压缩的两种方法,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

据说这个是可以撸到2089年的idea2020.2(推荐)

这篇文章主要介绍了据说这个是可以撸到2089年的idea2020.2,本教程给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

一篇文章带你搞定SpringBoot不重启项目实现修改静态资源

这篇文章主要介绍了一篇文章带你搞定SpringBoot不重启项目实现修改静态资源,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

win10操作系统下重启电脑java环境变量失效

这篇文章主要介绍了win10操作系统下重启电脑java环境变量失效,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Java实现批量修改文件名和重命名的方法

这篇文章主要介绍了Java实现批量修改文件名和重命名的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

关于Java HashMap自动排序的简单剖析

这篇文章主要给大家介绍了关于Java HashMap自动排序的简单剖析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring中BeanFactory和ApplicationContext的作用和区别(推荐)

这篇文章主要介绍了Spring中BeanFactory和ApplicationContext的作用和区别,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Java程序执行Cmd指令所遇问题记录及解决方案

这篇文章主要介绍了Java程序执行Cmd指令所遇问题记录,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

深入浅析jni中的java接口使用

这篇文章主要介绍了jni中的java接口使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多