【Linux】【Jenkins】后端项目打包教程-Linux版

本次安装版本:2.4+

  • 1、安装git环境
  • 2、安装mavne环境
    • 2.1 下载依赖
    • 2.2、解压、赋权
    • 2.2、配置环境变量
    • 2.3、验证安装
  • 3、jenkins-插件下载
    • 3.1、进入jenkins-->系统管理
    • 3.2、进入系统管理-->插件管理
    • 3.3、下载==两个==插件(如果之前下载了,这里是搜索不到的,请直接去3.4)
    • 3.4、确保插件启用成功
  • 4、jenkins-git账号配置、服务器配置
    • 4.1、git账号配置
    • 4.2、服务器配置
  • 5、项目流程配置
    • 5.1 新建工程
    • 5.2 配置工程详情
    • 5.1 空间存放配置
    • 5.1 源码管理配置(1.0和4.1必须配置好)
    • 5.1 构建后端项目打包(2.0需配置好)
    • 5.2 构建完成进行上传(4.2需配置好)
  • 6 踩坑点
    • 6.1、Cannot run program "mvn"
  • 5、技术支持

在这里插入图片描述

1、安装git环境

yum一键安装

sudo yum install git

在这里插入图片描述

验证安装,出现版本号,即安装成功

git --version

在这里插入图片描述

2、安装mavne环境

2.1 下载依赖

mkdir /home/jenkins
cd /home/jenkins
yum install zip
yum install unzip
wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.zip

2.2、解压、赋权

uzip -r apache-maven-3.9.9-bin.zip
chmod -R 777 ./apache-maven-3.9.9

2.2、配置环境变量

编辑环境变量文件

 vim /etc/profile

追加以下内容

export M2_HOME=/home/jenkins/apache-maven-3.9.9
export PATH=${M2_HOME}/bin:${PATH}

让环境变量文件立刻生效

source /etc/profile

在这里插入图片描述

2.3、验证安装

mvn -v

在这里插入图片描述

3、jenkins-插件下载

3.1、进入jenkins–>系统管理

在这里插入图片描述

3.2、进入系统管理–>插件管理

在这里插入图片描述

3.3、下载两个插件(如果之前下载了,这里是搜索不到的,请直接去3.4)

// 在搜索栏,下载以下两种插件
Publish Over SSH
Maven Integration plugin

在这里插入图片描述

3.4、确保插件启用成功

在这里插入图片描述
在这里插入图片描述

4、jenkins-git账号配置、服务器配置

4.1、git账号配置

进入凭证管理
在这里插入图片描述
选择添加凭证
在这里插入图片描述
保存git用户名、密码
在这里插入图片描述

4.2、服务器配置

进入到系统管理
在这里插入图片描述
搜索ssh service
进行服务器配置
在这里插入图片描述

5、项目流程配置

5.1 新建工程

在这里插入图片描述
在这里插入图片描述

5.2 配置工程详情

5.1 空间存放配置

在这里插入图片描述

5.1 源码管理配置(1.0和4.1必须配置好)

在这里插入图片描述

5.1 构建后端项目打包(2.0需配置好)

来到Build Steps
增加构建步骤选择调用顶层 Maven 目标

在这里插入图片描述

5.2 构建完成进行上传(4.2需配置好)

来到Build Steps
增加构建步骤选择Send files or execute commands over SSH
在这里插入图片描述

6 踩坑点

6.1、Cannot run program “mvn”

mvn 没安装好
方式一、尝试赋予权限
chmod -R 777 /home/jenkins/apache-maven-3.9.9
方式二、增加软连接
ln -s /home/jenkins/apache-maven-3.9.9/mvn /usr/bin/mvn

[yn_work_src-system] $ mvn -f /home/jenkins/xxxx/pom.xml -D-Dmaven.test.skip=true clean package -P SpringCloud
FATAL: command execution failed
java.io.IOException: error=2, No such file or directoryat java.base/java.lang.ProcessImpl.forkAndExec(Native Method)at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:340)at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:271)at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
Caused: java.io.IOException: Cannot run program "mvn" (in directory "/home/jenkins/xxxx-system"): error=2, No such file or directoryat java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)at hudson.Proc$LocalProc.<init>(Proc.java:252)at hudson.Proc$LocalProc.<init>(Proc.java:221)at hudson.Launcher$LocalLauncher.launch(Launcher.java:994)at hudson.Launcher$ProcStarter.start(Launcher.java:506)at hudson.Launcher$ProcStarter.join(Launcher.java:517)at hudson.tasks.Maven.perform(Maven.java:368)at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818)at hudson.model.Build$BuildExecution.build(Build.java:199)at hudson.model.Build$BuildExecution.doRun(Build.java:164)at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526)at hudson.model.Run.execute(Run.java:1894)at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44)at hudson.model.ResourceController.execute(ResourceController.java:101)at hudson.model.Executor.run(Executor.java:446)
Build step 'Invoke top-level Maven targets' marked build as failure
Finished: FAILURE

5、技术支持

联系方式:3151519983

创作不易,感谢点赞
创作不易,感谢点赞
创作不易,感谢点赞
创作不易,感谢点赞
创作不易,感谢点赞
创作不易,感谢点赞

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker 的使用-01

一、Docker 设置和镜像源 1.1、设置 #查看 Docker 信息 docker version docker info#守护线程启动&#xff1a; systemctl daemon-reload 重启Docker服务&#xff1a; systemctl restart docker#关闭Docker服务 sudo systemctl stop docker#启动Docker服务 systemctl start d…

【安装JDK和Android SDK】

安装JDK和Android SDK 1 前言2 下载2.1 下载途径2.2 JDK下载和安装2.2.1 下载2.2.2 安装并配置环境变量2.2.3 验证 2.3 SDK下载和安装2.3.1 下载2.3.2 安装2.3.3 环境变量配置2.3.4 验证 1 前言 在软件开发中&#xff0c;Android应用开发通常使用Android Studio&#xff0c;但…

低成本轻量化5G网络部署redcap技术

RedCap&#xff08;Reduced Capability&#xff09;轻量化5G路由器旨在提供低功耗、成本效益高、性能较5G完整版稍微降低的解决方案。用于满足工业物联网&#xff08;IoT&#xff09;、消费电子产品和轻量级5G设备的需求。通过对5G技术进行一定程度的“功能裁剪”&#xff0c;降…

【华为】配置RIP协议

RIP&#xff08;Routing Information Protocol&#xff09;是一种内部网关协议&#xff08;IGP&#xff09;&#xff0c;主要用于小型网络中的动态路由。RIP有两个主要版本&#xff1a;‌RIPv1和‌RIPv2&#xff0c;它们之间存在一些关键区别&#xff1a; ‌分类支持‌&#xf…

医疗图像之基于UNet3+(UNet+++)的X射线图像牙齿分割

第一步&#xff1a;准备数据 X射线图像牙齿分割&#xff0c;总共有2000张 第二步&#xff1a;搭建模型 UNet3主要是参考了UNet和UNet两个网络结构。尽管UNet采用了嵌套和密集跳过连接的网络结构&#xff08;见图1(b)红色三角区域&#xff09;&#xff0c;但是它没有直接从多尺…

探索机器学习中的特征选择技术

在机器学习和数据科学领域&#xff0c;特征选择是一个关键步骤&#xff0c;它不仅有助于提高模型的性能&#xff0c;还能帮助我们更好地理解数据。本文将深入探讨特征选择的重要性、常见方法以及如何在实际项目中应用这些技术。 一、特征选择的重要性 降低维度&#xff1a;减…

二叉查找树(Binary Search Tree)Java语言实现

一、二叉查找树 二叉查找树&#xff08;Binary Search Tree&#xff09;&#xff0c;也称为二叉搜索树、有序二叉树&#xff08;Ordered Binary Tree&#xff09;或排序二叉树&#xff08;Sorted Binary Tree&#xff09;。 是指一棵空树或者具有下列性质的二叉树&#xff1a…

Android 无Bug版 多语言设计方案!

出海业务为什么要做多语言&#xff1f; 1.市场扩大与本地化需求&#xff1a; 通过支持多种语言&#xff0c;出海项目可以触及更广泛的国际用户群体&#xff0c;进而扩大其市场份额。 本地化是吸引国际用户的重要策略之一&#xff0c;而语言本地化是其中的核心。使用用户的母语…

NFT Insider #151:The Sandbox 推出 Alpha 第4季;腾讯或将收购育碧

市场数据 加密艺术及收藏品新闻 Beeple 将于 11 月在南京德基美术馆举办个人首展 著名数字艺术家 Beeple 近日在X平台发布视频&#xff0c;宣布将于 2024 年 11 月 14 日在南京德基美术馆举办个人首次展览&#xff0c;名为《Beeple&#xff1a;来自合成未来的故事》。该展览将…

【计算机网络】详谈TCP协议确认应答机制捎带应答机制超时重传机制连接管理机制流量管理机制滑动窗口拥塞控制延迟应答

一、TCP 协议段格式 1.1、4位首部长度 4位首部长度的基本单位是4字节&#xff0c;也就是说如果4位首部长度填6&#xff0c;那报头长度就是24字节。报头长度的取值范围为[0,60]字节&#xff0c;也就是说选项的最大长度为40字节。 二、确认应答机制 发送数据和发送应答&#x…

vue3 在store的index.js

导入vuex&#xff0c;在store的index.js创建store对象 在main.js挂载store import store from ./storenew Vue ({/* 将store对象实例挂载到vue实例中 所有组件就可以直接从store中获取全局数据了*/ store, render: h > h(App) }).$mount(#app) 在store中的index.js进行声明…

Chainbase :链原生的 Web3 AI 基建设施

“随着 Chainbase 在生态系统和市场方面的进一步拓展&#xff0c;其作为链原生 Web3 AI 基建设施的价值将愈发显著。” 算法、算力和数据是 AI 技术的三大核心要素。实际上&#xff0c;几乎所有的 AI 大模型都在不断革新算法&#xff0c;以确保模型能够跟上行业的发展趋势&…

react实现实时计时的最简方式

js中时间的处理&#xff0c;不借助于moment/dayjs这样的工具库&#xff0c;原生获取格式化的时间&#xff0c;最简单的实现方式可以参考下面这样。 实现效果 代码实现 封装hooks import { useState, useEffect } from "react";export function useCountTime() {c…

手动nginx平滑升级

一、下载nginx安装包 wget http://nginx.org/download/nginx-1.24.0.tar.gz 二、解压缩 tar -zxf nginx-1.24.0.tar.gz 三、进入解压缩后文件 3.1 cd /usr/local/nginx/sbin 预编译 进入如下命令 ./configure -prefix/usr/local/nginx --with-http_ssl_module --with…

免费设计元素下载,设计师必备,建议收藏!

设计师找设计素材、免抠元素&#xff0c;背景图等等&#xff0c;就上这6个网站&#xff0c;免费下载&#xff01; 1、菜鸟图库 免抠图片素材-免抠图片模板免费下载 - 菜鸟图库 这是一个专门为新手设计师提供免费设计素材的网站&#xff0c;站内有非常多设计素材&#xff0c;其…

为什么说期限提醒系统是项目申报的必备工具?

在项目申报的征程中&#xff0c;时间就是生命&#xff0c;时机决定成败。然而&#xff0c;当前项目申报时间管理却面临着诸多棘手的问题&#xff0c;这也让期限提醒系统成为了必不可少的必备工具。那么&#xff0c;它究竟为何如此关键&#xff1f; 目前项目申报时间管理方面面临…

uniapp 锁屏显示插件 Ba-LockShow(可让vue直接具备锁屏显示能力)

简介 Ba-LockShow 是一款可以直接使uniapp的vue界面在锁屏页展示的插件。 支持使vue直接具备锁屏显示能力支持设置锁屏显示和不显示支持唤醒屏幕 截图展示&#xff08;仅参考&#xff09; 支持定制、本地包、源码等&#xff0c;有建议和需要&#xff0c;请点击文章结尾“Unia…

世界空间到观察空间的矩阵

1&#xff09;世界空间到观察空间的矩阵 2&#xff09;Addressable在不同工程中如何实现打包和加载 3&#xff09;如何设计角色在下蹲时允许跳跃 4&#xff09;如何实时编辑玩家的近裁剪面距离 这是第403篇UWA技术知识分享的推送&#xff0c;精选了UWA社区的热门话题&#xff0…

算法系列之十二:多边形区域填充算法--扫描线填充算法(有序边表法)

二、扫描线算法&#xff08;Scan-Line Filling&#xff09; 扫描线算法适合对矢量图形进行区域填充&#xff0c;只需要直到多边形区域的几何位置&#xff0c;不需要指定种子点&#xff0c;适合计算机自动进行图形处理的场合使用&#xff0c;比如电脑游戏和三维CAD软件的渲染等等…

智能优化算法-蛇优化算法(SO)(附源码)

目录 1.内容介绍 2.部分代码 3.实验结果 4.内容获取 1.内容介绍 蛇优化算法 (Snake Optimization Algorithm, SO) 是一种基于群体智能的元启发式优化算法&#xff0c;它模拟了蛇的捕食行为、运动模式和社会互动&#xff0c;用于解决复杂的优化问题。 SO的工作机制主要包括&a…