Jenkins For Windows编译构建C#项目环境搭建(完整版)

安装Jenkins

下载Windows安装包

官方下载地址

选择稳定版,这里下载的是最新版,如需下载指定版本点击 以前的发行版

在这里插入图片描述

配置java环境

下载 java jdk 17

jdk17官方下载链接

这里下载的是msi版本的安装包
在这里插入图片描述

安装jdk17

双击运行安装包,一直下一步直到安装完成即可,安装目录用默认的即可不用修改,安装完成后会自动添加环境变量
在这里插入图片描述

安装Jenkins

双击运行Jenkins安装包

安装目录可自定义这里用的是默认路径
在这里插入图片描述
因为Jenkins这种安装方式在Windows系统中是以Windows services方式运行的,这里我们要指定管理服务的用户,可选域账号也可选本地账号

注意:选择域账号作为服务管理用户时,需要先在本地安全策略中进行配置才可验证通过
在这里插入图片描述

在这里插入图片描述

验证通过才可进行下一步安装
在这里插入图片描述
设置Jenkins服务端口,这里使用的是默认的8080端口
在这里插入图片描述
选择java环境一定要是这个层级 C:\Program Files\Java\jdk-17\

支持java11,17,21
在这里插入图片描述
继续下一步直到点击Install即可
在这里插入图片描述

初始化Jenkins

浏览器登录Jenkins console界面,根据提示找到初始密码
在这里插入图片描述
这里选择不使用推荐的插件
在这里插入图片描述
选择无先什么插件都不安装
在这里插入图片描述
这里可以创建一个管理员用户,我这里没有创建选择 使用admin账户继续
在这里插入图片描述

修改Jenkins软件安装源为国内安装源
  1. 点击 Manage Jenkins ————> Plugins————>Advanced settings
    https://updates.jenkins.io/update-center.json 修改为 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

  2. 修改 C:\Users\jks\AppData\Local\Jenkins.jenkins\updates\default.json文件
    www.google.com替换为www.baidu.com
    https://updates.jenkins.io/download/plugins 替换为 https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/

在这里插入图片描述
配置完成后重启下Jenkins可以在
http://127.0.0.1:8080/restart

安装常用插件(按需安装即可)
  • Localization Support
  • Localization: Chinese (Simplified)
  • Locale
  • Git plugin (拉去git代码)
  • Email Extension Plugin (邮件通知)
  • Credentials Plugin (权限管理)
  • build user vars plugin (获取Jenkins自带变量)
  • Active Directory plugin (配置ldap域账号使用)
  • MSBuild (构建C#应用使用)
中文设置

Manage Jenkins ————> System ————> Locale————> Default Language

在这里插入图片描述
在这里插入图片描述
修改完再次重启Jenkins http://127.0.0.1:8080/restart

安装C#构建工具

下载Microsoft Visual Studio 2019

2019下载地址

安装 Visual Studio 2019

在这里插入图片描述
这边勾选构建环境所依赖的组件,因为之构建.NET-Framework的项目所以我只勾选了这些
在这里插入图片描述

安装Git

Git下载地址

点击安装包这里可以选择安装目录我这里用的是默认的
在这里插入图片描述
选择安装组件
在这里插入图片描述
这里可以将Git修改为其他名字

在这里插入图片描述

Git安装包中内置了很多种编辑器,可以根据自己需求选择相应的编辑器,这里我们选择默认的vim
在这里插入图片描述
选择初始化新项目的主干分支名称,第一个选项是git自己选择,第二个是我们自己指定默认是main
在这里插入图片描述

调整环境变量
在这里插入图片描述

选择ssh执行文件
在这里插入图片描述
选择https后端传输
在这里插入图片描述

配置行尾符号转换
在这里插入图片描述

后面一直下一步直到点击安装即可
在这里插入图片描述

配置C#构建环境

配置MSBuild环境

Manage Jenkins ————> Tools————> MSBuild 安装

将Microsoft Visual Studio2019安装目录中的MSBuild的可执行文件路径填写进去
在这里插入图片描述

配置Git环境

因为安装git时已经自动添加了环境变量所以不需要输入git的安装目录直接输入可执行程序名称即可
在这里插入图片描述

配置拉取git代码的密钥

在Jenkins所在的服务器生成密钥
  1. 打开Windows终端
  2. 在终端窗口中,输入“ssh-keygen”命令,并按回车键。
  3. 系统会提示您输入密钥的文件名和位置。您可以选择默认位置或自定义路径。
  4. 输入密码短语(如果需要)以保护私钥
    这里一直回车使用默认设置即可
    在这里插入图片描述
去gitlab添加SSH密钥

在这里插入图片描述
将生成的id_rsa.pub文件内容添加进去设置下到期时间即可
在这里插入图片描述

在Jenkins中添加凭据

Manage Jenkins ————> Credentials ————> System ————> Global credentials (unrestricted)

在这里插入图片描述

创建JOB

新建一个自由风格的任务
在这里插入图片描述
将项目的git地址输入进去选择刚刚添加的凭据作为身份认证
在这里插入图片描述
使用msbuild构建项目
在这里插入图片描述

  • /t:Rebuild # 清理现有的构建输出,然后重新构建所有项目
  • /p:PublishProfile=jen # 指定发布配置文件的名称
  • /p:Configuration=Release # 生成优化后的代码,去除调试信息
  • /p:DeployOnBuild=true # 当设置为 true 时,MSBuild 会在构建完成后立即执行部署步骤
  • /p:WebPublishMethod=FileSystem # 表示将发布的文件输出到文件系统中的某个目录(jen文件中配置的目录)。

效果展示

构建成功我们可以去到指定的发布目录中看下构建后的结果
在这里插入图片描述
在这里插入图片描述
后续再配置将构建后的可执行文件发布到应用部署的服务器即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/707195.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringMVC-基础架构

一、什么是MVC 二、什么是SpringMVC 三、SpringMVC的特点 四、配置SpringMVC 简单流程&#xff1a; 总体框架 1.创建pom.xml依赖 <!--打包方式--><packaging>war</packaging><!--依赖--><dependencies><dependency><groupId>org.s…

得物架构面试:如何保证服务发布过程中流量无损?

哈喽&#xff0c;大家好&#xff0c;我是明智 今天跟大家讨论一个服务稳定性相关的话题&#xff0c;对于大部分做业务的小伙伴来说&#xff0c;很少会被问到这类问题 不过你如果你希望面试公司的一些基础部门&#xff0c;例如&#xff1a;基础架构、效能开发、服务稳定性保障等…

ubtun虚拟机安装

选择镜像后启动 选择第一个回车 加载完成后 &#xff0c;进入Ubuntu安装界面&#xff0c;安装语言选择English&#xff0c;完成后按一下回车&#xff1a; 此时弹出安装器可更新提示&#xff0c;下方选项选择第二个Continue without updating&#xff08;不更新&#xff0c;继续…

复旦微FMQL20SM全国产ARM+FPGA核心板,替代xilinx ZYNQ7020系列

FMQL20SM核心板一款全国产工业核心板。基于复旦微FMQL20S400M四核ARM Cortex-A7&#xff08;PS端&#xff09; FPGA可编程逻辑资源&#xff08;PL端&#xff09;异构多核SoC处理器设计的全国产工业核心板&#xff0c;PS端主频高达1GHz。 核心板简介 FMQL20SM核心板是一款全国…

PHP地方门户分类信息网站源码讯客分类信息系统源码(含手机版)

源码介绍 1.上传程序到网站根目录,访问http://域名/install/index.php 进行安装,不要直接打开网址&#xff0c;先直接安装; 2.安装完成后 后台恢复数据即可 默认帐号密码都是admin http://域名/admin/ 3.不要删除任何文件&#xff0c;因为删除文件或者修改代码可能造成错误 运…

【机器学习】鸢尾花分类:机器学习领域经典入门项目实战

学习机器学习&#xff0c;就像学习任何新技能一样&#xff0c;最好的方法之一就是通过实战来巩固理论知识。鸢尾花分类项目是一个经典的入门项目&#xff0c;它不仅简单易懂&#xff0c;还能帮助我们掌握机器学习的基本步骤和方法。 鸢尾花数据集&#xff08;Iris Dataset&…

Django 5 Web应用开发实战

文章目录 一、内容简介二、目录内容三、值得一读四、适读人群 一、内容简介 《Django 5 Web应用开发实战》集Django架站基础、项目实践、开发经验于一体&#xff0c;是一本从零基础到精通Django Web企业级开发技术的实战指南。《Django 5 Web应用开发实战》内容以Python 3.x和…

Java多线程面试重点-1

0. 什么是并发&#xff1f;什么是并行&#xff1f; 并发&#xff1a;把时间分成一段一段&#xff0c;每个线程轮流抢占时间段。 如果时间段非常短&#xff0c;线程切换非常快&#xff0c;被称为伪并行。并行&#xff1a;多个线程可以同时运行。 并发与并行造成的影响&#xff…

如何把路由器设备的LAN口地址为三大私网地址

要将路由器的LAN口地址配置为三大私有IP地址范围之一&#xff08;10.0.0.0/8、172.16.0.0/12 或 192.168.0.0/16&#xff09;&#xff0c;我们需要访问路由器的管理界面并进行相应的设置。 下面是步骤&#xff1a; 连接到路由器&#xff1a; 连接到路由器的管理界面&#xf…

在vue中循环中调用接口-promise.all();按顺序执行异步处理

&#x1f308;&#x1f308;&#x1f308;目录 场景一 解决 场景二 解决 场景一 数组遍历中每次遍历都需要去请求getStaffCover接口&#xff0c;拿到该接口的结果拼接到数组的每一项&#xff0c;等到数组遍历完之后&#xff0c;拿到拼接好的数组。拼接的数组必须是最终遍历…

计算机网络 —— 应用层(应用层概述及服务方式)

计算机网络 —— 应用层&#xff08;应用层概述及服务方式&#xff09; 应用层服务方式C/S&#xff08;客户端-服务器&#xff08;C/S&#xff09;模型&#xff09;基本概念特点B/S&#xff08;Browser/Server&#xff09;基本概念特点应用场景 p2p &#xff08;对等网络&#…

这三款使用的视频、图片设计工具,提供工作效率

Videograp Videograp是一款专注于视频生成的工具&#xff0c;特别适合需要快速剪辑和编辑视频的用户。Videograp具备以下特点&#xff1a; 影音比例转换&#xff1a;Videograp支持调整视频的分辨率和比例&#xff0c;使其更适合不同的播放环境和设备。 AI快剪&#xff1a;该工…

超市陈列艺术:不仅仅是货品摆放,更是营销策略的体现

品类管理在门店落地的最直观表现就是单品的空间陈列管理&#xff0c;通过陈列细节的差异体现出门店的商品定位与策略。此文分析入木三分&#xff0c;值得学习。 在商品陈列的空间管理领域&#xff0c;不仅要考虑整体的空间陈列&#xff0c;也要对每个商品的空间陈列位置&#…

旅游行业电商平台:数字化转型的引擎与未来发展趋势

引言 旅游行业数字化转型的背景和重要性 随着信息技术的飞速发展&#xff0c;数字化转型成为各行业发展的必然趋势。旅游行业&#xff0c;作为一个高度依赖信息和服务的领域&#xff0c;数字化转型尤为重要。通过数字化手段&#xff0c;旅游行业能够实现资源的高效配置、服务的…

Apache Doris单机快速安装(已踩坑)

官方文档&#xff1a;https://doris.incubator.apache.org/zh-CN/docs/get-starting/quick-start/ 环境&#xff1a; 操作系统&#xff1a;CentOS7.6 X86_64 JDK&#xff1a;Oracle jdk1.8.0_351 1.版本下载 从 doris.apache.org 下载相应的 Doris 安装包&#xff0c;并且解压…

11.QLoRA微调ChatGLM3-6B

实战 QLoRA 微调 ChatGLM3-6B 大模型 实战 PEFT 库 QLoRA ChatGLM3-6B 微调数据集 AdvertiseGen AdvertiseGen 数据集获取 使用ChatGLM3-6b Tokenizer处理数据 关于ig nore_label_id 的设置&#xff1a; 在许多自然语言处理和机器学习框架中&#xff0c; ig nore_label_id 被…

idea在空工程中添加新模块并测试的步骤

ServicesTest是空的工程&#xff0c;没有pom文件。现在需要在ServicesTest目录下添加新模块作为新的工程&#xff0c;目的是写一下别的技术功能。 原先目录结构&#xff0c;ServicesTest是空的工程&#xff0c;没有pom文件。下面的几个模块是新的工程&#xff0c;相互独立。 1.…

树莓派4B学习笔记8:开机自启动Python脚本_kill关闭后台脚本

今日继续学习树莓派4B 4G&#xff1a;&#xff08;Raspberry Pi&#xff0c;简称RPi或RasPi&#xff09; 本人所用树莓派4B 装载的系统与版本如下: 版本可用命令 (lsb_release -a) 查询: Opencv 版本是4.5.1&#xff1a; 紧接着上篇文章学习的串口通信,今日学习如何让树莓派开机…

[Algorithm][贪心][柠檬水找零][将数组和减半的最少操作次数][最大数][摆动序列]详细讲解

目录 1.柠檬水找零1.题目链接2.算法原理详解3.代码实现 2.将数组和减半的最少操作次数1.题目链接2.算法原理详解3.代码实现 3.最大数1.题目链接2.算法原理详解3.代码实现 4.摆动序列1.题目链接2.算法原理详解3.代码实现 1.柠檬水找零 1.题目链接 柠檬水找零 2.算法原理详解 …

网络安全 - ARP 欺骗原理+实验

APR 欺骗 什么是 APR 为什么要用 APR A P R \color{cyan}{APR} APR&#xff08;Address Resolution Protocol&#xff09;即地址解析协议&#xff0c;负责将某个 IP 地址解析成对应的 MAC 地址。 在网络通信过程中会使用到这两种地址&#xff0c;逻辑 IP 地址和物理 MAC 地址&…