基于Jenkins搭建.NET FrameWork持續(xù)集成環(huán)境
這里我們主要搭建 .Net 環(huán)境。本文是在 Windows 環(huán)境下安裝的 Jenkins 進(jìn)行操作
一、安裝所需環(huán)境
這里我們需要安裝以下安裝包:
- .NET Framework 4.6.1https://www.microsoft.com/zh-cn/download/details.aspx?id=49982
- MicrosoftBuild Tools 2015https://www.microsoft.com/zh-CN/download/details.aspx?id=48159
- .NET Framework 4.6.1 Developer Packhttps://www.microsoft.com/zh-CN/download/details.aspx?id=49978
- NuGetx86 Commandlinehttps://dist.nuget.org/index.html
1. .NET Framework 運(yùn)行環(huán)境;
2.MSBuild,雖然平時(shí)我們使用 Visual Studio 都是圖形界面編譯、發(fā)布程序,但實(shí)際上 Visual Studio 是去調(diào)用 MSBuild 來(lái)進(jìn)行各種操作的,所以我們要想讓 Jenkins 也能自動(dòng)編譯代碼,也要為它準(zhǔn)備一套 MSBuild。
3. .NET Framework 4.6.1 開(kāi)發(fā)人員包(Developer Pack),在過(guò)去稱(chēng)為T(mén)argeting Pack,里面包含了一堆程序集。像是早期版本的 Visual Studio 2013,發(fā)布之時(shí)并沒(méi)有 .NET Framework 4.6.1,要想讓它支持就需要安裝這個(gè)開(kāi)發(fā)人員包。如果不安裝的話(huà),后期編譯 4.6.1 的程序時(shí)會(huì)提示找不到 System.Object、System.Attribute 程序集的錯(cuò)誤。4.6.1 的開(kāi)發(fā)人員包包含了 4.0、4.5、4.6Targeting Pack 的內(nèi)容,安裝 4.6.1 的包就不需要安裝 4.0 其他版本的包了。另外如果需要中文支持,需要先安裝英文版,再安裝中文語(yǔ)言包。
4.NuGet 的控制臺(tái)程序,在編譯程序之前,先需要使用 NuGet 進(jìn)行包還原。這個(gè)軟件不需要安裝,放在一個(gè)固定的位置就行,例如放在 D:\NuGet 下。
也可以直接安裝 Visual Studio 省去以上安裝包的安裝
我們這里選擇的是安裝 Visual Studio 2017
二、安裝 MSBuild 插件
進(jìn)入 Jenkins 的插件管理頁(yè)面,安裝 MSBuild 插件,
手動(dòng)安裝地址為:https://wiki.jenkins-ci.org/display/JENKINS/MSBuild+Plugin
也可以在:系統(tǒng)設(shè)置--插件管理--可選插件中查找MSBuild
我們這里已經(jīng)安裝完成
安裝好之后,之后進(jìn)入 “Global Tool Configuration”(全局工具配置) 界面
在打開(kāi)的頁(yè)面里找到“MSBuild”選項(xiàng),先點(diǎn)擊“MSBuild 安裝”,再點(diǎn)擊“新增 MSBuild” 按鈕,
Path to MSBuild 填寫(xiě)你MSBuild的安裝路徑,
由于我這里安裝的是 Visual Studio 2017 所以位置如下
附上 MSBuild 的默認(rèn)安裝路徑
32位C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe64位C:\Program Files (x86)\MSBuild\14.0\Bin\amd64\MSBuild.exe
三、Jenkins Job 配置
準(zhǔn)備好了運(yùn)行環(huán)境和 Jenkins 插件,我們新建一個(gè) Job 試一試。我們公司使用的是GitLab,所以我會(huì)從 GitLab拉取代碼,使用SVN等倉(cāng)庫(kù)也大同小異,這里就略過(guò)了。
1. 還原 NuGet 程序包
我們需要在“構(gòu)建”一欄中,新增一個(gè)“Execute Windows batch command”(執(zhí)行批處理命令)步驟,用來(lái)進(jìn)行 NuGet 包還原
"C:\Users\nuget\nuget.exe" restore .\YourSolutionName.sln
首先是指定 nuget.exe 的路徑,然后使用 restore 命令,對(duì)當(dāng)前目錄下的YourSolutionName.sln 解決方案文件進(jìn)行包還原。大家根據(jù)自己實(shí)際情況進(jìn)行修改即可。
2. 配置 MSBuild 編譯參數(shù)
依然是在“構(gòu)建”一欄,新建一個(gè)“Build a Visual Studio project or solution using MSBuild”(使用 MSBuild 生成 VS 項(xiàng)目或解決方案)步驟
從上往下,依次是
- 選用的 MSBuild 版本
- 目標(biāo)項(xiàng)目或解決方案文件的路徑+文件名
- MSBuild 參數(shù)
這里主要講一下“Command Line Arguments”的配置,更全面的 MSBuild 文檔可以參閱 MSDN:https://msdn.microsoft.com/zh-CN/library/dd393574.aspx
我希望生成一個(gè) ASP.NET MVC 項(xiàng)目,并發(fā)布到文件系統(tǒng)中,主要用到:
- /t:Rebuild 重新生成
- /p:Configuration=Release Release 生成模式
- /p:VisualStudioVersion=14.0 指定子工具集(https://msdn.microsoft.com/zh-cn/library/bb383796.aspx)版本,不設(shè)置會(huì)報(bào)錯(cuò)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 簡(jiǎn)單了解.NET Framework
- .NET Core/Framework如何創(chuàng)建委托大幅度提高反射調(diào)用的性能詳解
- Windows Server 2012 R2或2016無(wú)法安裝.NET Framework 3.5.1的解決方法
- .NET framework 4.0 安裝失敗回滾問(wèn)題
- 安裝.NET Framework進(jìn)度條卡住不動(dòng)的解決方案(推薦)
- 基于.net standard 的動(dòng)態(tài)編譯實(shí)現(xiàn)代碼
- Visual Studio 2017創(chuàng)建.net standard類(lèi)庫(kù)編譯出錯(cuò)原因及解決方法
- .Net Framework .Net .NET Standard的概念及區(qū)別
相關(guān)文章
idea遠(yuǎn)程調(diào)試spark的步驟講解
今天小編就為大家分享一篇關(guān)于idea遠(yuǎn)程調(diào)試spark的步驟講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03java如何利用FastJSON、Gson、Jackson三種Json格式工具自定義時(shí)間序列化
本篇文章主要介紹了java如何利用FastJSON、Gson、Jackson三種Json格式工具自定義時(shí)間序列化,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08spring?boot?Mybatis?攔截器實(shí)現(xiàn)拼接sql和修改的代碼詳解
這篇文章主要介紹了spring?boot?Mybatis?攔截器實(shí)現(xiàn)拼接sql和修改,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05解決引用slf4j中Logger.info只打印出文字沒(méi)有數(shù)據(jù)的問(wèn)題
這篇文章主要介紹了解決引用slf4j中Logger.info只打印出文字沒(méi)有數(shù)據(jù)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12java實(shí)現(xiàn)String字符串處理各種類(lèi)型轉(zhuǎn)換
在日常的程序開(kāi)發(fā)中,經(jīng)常會(huì)涉及到不同類(lèi)型之間的轉(zhuǎn)換,本文主要介紹了String字符串處理各種類(lèi)型轉(zhuǎn)換,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10IntelliJ IDEA基于Maven構(gòu)建Java項(xiàng)目
在 Java 開(kāi)發(fā)中,使用 Maven 是一種廣泛采用的構(gòu)建工具,本文主要介紹了IntelliJ IDEA基于Maven構(gòu)建Java項(xiàng)目,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03