Jenkins的jdk和maven配置

news2024/11/15 8:33:41

目录

  • 传送门
  • 前言
  • 一、概念
  • 二、JDK的配置
  • 三、Maven配置
  • 四、环境变量配置
  • 五、坑

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

承接 Jenkins配置(插件/角色/凭证)一文,
以CentOS7上面的支持JDK8的Jenkins2.346-1的LTS版本和支持JDK17的Jenkins 2.440.1的LTS版本综合介绍Jenkins的jdk和maven配置,默认按照高版本Jenkins2.440.1讲解,有不一样的地方会特别指出低版本Jenkins。

下面文章不定期更新中。。。

Linux安装JDK17
Linux安装MySQL
Linux安装Nginx
Linux安装Maven
运行一个jar包

Jenkins安装启动(JDK8/11/17)
Jenkins配置(插件/角色/凭证)
Jenkins的jdk和maven配置
Jenkins三种构建类型

一、概念

如同在win电脑上面,用idea开发,得配置好JDK和Maven,Jenkins同理,也需要单独配置好JDK和Maven。而且必须配置,否则在后面的自动化构建微服务等是无法自动化完成的。

二、JDK的配置

在这里插入图片描述
在Manage Jenkins -> Tools 里面,点击进去
在这里插入图片描述
点击Add JDK
在这里插入图片描述
注意:

  • Name里面输入的是别名,可以随便起名字,但是为了避坑,最好是叫JDK17或者JDK8之类的(大小写随便)。笔者高版本Jenkins对应的是JDK17,这里配置别名为JDK17
  • JAVA_HOME里面配置的是Linux服务器具体的JDK17路径,注意,路径一定是bin上一层目录,地址不要配置错了。笔者这边配置为/usr/local/jdk-17.0.10
  • Install automatically是自动安装的意思,不打勾,建议没有安装的,先自己单独安装,不建议用Jenkins这边的自动安装,自己安装可以掌控安装目录等等,可以配置环境变量等等,Jenkins的自动安装不会给做这些配置的。

最后点击Save保存。

低版本Jenkins对应的JDK8,并且笔者的是汉化版本,新增JDK8截图如下:
在这里插入图片描述

系统管理-全局工具配置里面新增,先点应用,后点保存

三、Maven配置

在这里插入图片描述
同上,Name是别名,MAVEN_HOME配置Linux服务器里面的Maven软件路径,配置到bin上一层目录。自动安装不打勾。

低版本Jenkins对应的JDK8,并且笔者的是汉化版本,新增Maven截图如下:
在这里插入图片描述

四、环境变量配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
根据上图,找到 Dashboard->Manage Jenkins->System->Global properties->Environment variables打勾

点击Add新增
在这里插入图片描述

在这里插入图片描述
一共新增三个健值对:

1、第一个键值对:

  • Name:JAVA_HOME,注意不能随便起名字,只能这么写,小写也不行的。
  • Value:/usr/local/jdk-17.0.10,是Linux系统真实存放jdk的安装目录,注意是bin上一层。

2、第二个键值对:

  • Name:M2_HOME,注意不能随便起名字,只能这么写,小写也不行的,MAVEN_HOME也不行,这个是Jenkins这边需要这么配置。
  • Value:/usr/local/maven/apache-maven-3.9.6,是Linux系统真实存放Maven的安装目录,注意是bin上一层。

3、第三个健值对:

  • Name:PATH+EXTRA,注意不能随便起名字,只能这么写,小写也不行的。
  • Value:$M2_HOME/bin,是Linux系统真实存放Maven的安装bin目录,专门指向bin这一层级。

其他保持默认,点击保存。

低版本Jenkins对应的JDK8,并且笔者的是汉化版本,新增三个键值对截图如下:

在这里插入图片描述
系统管理-系统配置-全局属性-环境变量(先应用,后保存)

五、坑

有些读者,配置以后,后面构建项目运行jar包的时候,怎么也不对。其实是这边有配置问题,环境变量可能配置错了。笔者这边总结一个最大的坑。就是路径配置问题。有些读者的Name那些都是写对的。其实在上面的JDK的配置、Maven配置、环境变量配置把路径配置错了。或者是忘记做了环境变量配置。

whereis  java

在这里插入图片描述
这个是笔者运行上面指令的截图。这里面看着java有三个目录,其实真正的安装目录只有一个。这里包含了两个软链接目录,随便拷贝一个去配置,肯定是不对的,在配置的时候,一定只能拷贝真正的安装目录。

当目录少的时候,打开xftp,一个一个打开看,看哪个是真的安装目录,有JDK的一些常见文件就是真的安装目录,但是当目录很多的时候怎么办呢? 这里笔者提供一个最快办法:
在这里插入图片描述
找jdk安装路径的正确办法,一路链接过去才是真正的安装位置。

which java  #  出现/usr/bin/java  ,这个表示最优先的默认目录。但是这个目录通常都是软链接目录名称,是个假目录,并非真正jdk安装目录,你可以认为这像极了window系统的桌面快捷方式,Jenkins去配置这个目录,大概率是要出错的。

ls -lrt /usr/bin/java  #  查看名称是/usr/bin/java的软链接指向哪里,一直递归查询,到没有新的箭头->指向时,就对了。并且为了确保是真正安装目录,最好是点进去看一下。

在这里插入图片描述
在这里插入图片描述
跟着截图的目录点进去,发现是真实的jdk安装目录,那么JAVA_HOME地址就是/usr/local/jdk-17.0.10,注意是bin上一层目录。

同理,maven软件的路径是一样的找法。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java+前端+Vue 后端Spring boot 开发的全套UWB定位方案,0.1米高精度定位系统源码

Java前端Vue 后端Spring boot 开发的全套UWB定位方案,0.1米高精度定位系统源码 UWB定位系统由硬件定位设备、定位引擎和应用软件组成。该定位系统应用软件支持PC端和移动端访问,并提供位置实时显示、历史轨迹回放、人员考勤、电子围栏、行为分析、智能巡检等功能…

基于docker的oracle12.2.0.1部署及oracle使用与docker镜像容器制作迁移方法

基于docker的oracle12.2.0.1部署及oracle使用与docker镜像容器制作迁移方法 本文介绍了基于docker的oracle12.2.0.1部署,包含了oracle基本配置、监听器和实例启动方法、PDB和CDB操作方法、表空间建立和用户数据库建立、常见启动问题解决等,并介绍了镜像制…

resultType的类型错误

resultType的类型错误,不能是List而应该是对应的返回Bean对象的类型,VO 这里是引用 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: Error querying database. Cause: java.lang…

【Python】【PVE】使用PVE-API对虚拟机进行远程关机

源代码 import requests import urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)address "填写PVE的域名/IP:端口" path "/api2/json/nodes/填写节点名称/qemu/填写虚拟机VMID/status/shutdown" url "https://&quo…

vs - vs2013中编译sqlite3.44.2

文章目录 vs - vs2013中编译sqlite3.44.2概述笔记工程输出归档END vs - vs2013中编译sqlite3.44.2 概述 以前在vs2019下编译了sqlite3.44.2, 好使。做了笔记(sqlite3.44.2的编译) 现在准备将手头的vs2019工程改为vs2013的,自然要将sqlite也编译为vs2013版本的。 按…

Python for循环 使用两个变量

https://geek-docs.com/python/python-ask-answer/336_python_for_loop_with_two_variables.html 一、使用zip()函数进行迭代 zip()函数可以将两个或多个可迭代对象打包成一个元组序列。 fruits [apple, banana, orange] prices [0.5, 0.3, 0.4]for fruit, price in zip(f…

【C++】C++提供类型转换的机制

目录 前言: 一,static_cast 二,reinterpret_cast 三,const_cast 四,dynamic_cast 前言: 传统的不同类型转换有隐式类型转换(类型不匹配时编译器自动进行的转换,如:i…

记一次安卓.apk加固,加固后安装失败,重新签名也安装失败问题

1、AndroidStudio打包生成.apk文件 2、使用360加固apk(或其他平台) 注意:加固后的apk必须进行重新签名才能安装,否则安装失败。apk签名可以使用jarsigner 和 apksigner,jarsigner 只能进行v1签名;apksigner…

Linux ip命令常用操作

ip 命令来自 iproute2 软件包,在 CentOS 7 中默认已安装(yum install -y iproute)。 iproute2 软件包提供了很多命令(rpm -ql iproute |grep bin),如 ss 命令、bridge,这些命令可以完全替代 if…

【CMake系列】06-项目结构与输出路径管理

为了对大型项目实现更好的管理【模块化协作开发等等】,cmake 提供了很多指令,可以对项目的结构进行调整、管理,便于项目的合理规划。本文我们要学习的就是 项目结构的设置,以及 构建程序等 输出路径的设置 本专栏的实践代码全部放…

【MySQL】Linux安装MySQL

一、center OS环境准备 为了在Linux系统中查看MySQL5.8与8.0版本的区别 我们要准备两个虚拟机,需要的软件:VMware和CentOS7 因为博主之前在学习redis的时候已经安装过一个虚拟机了,所以我就直接克隆了一个CentOS2.0 修改mac地址&#xff0…

mysql8.0中的mysql.ibd

mysql8.0版本中多了一个mysql.ibd的文件。5.7版本则没有这个文件。 MySQL5.7: .frm文件 存放表结构信息 .opt文件,记录了每个库的一些基本 信息,包括库的字符集等信息 .TRN,.TRG文件用于存放触发器的信 息内容。 在MySQL 8.0之前&#xff0…

Windows10系统中安装与配置PyTorch(无GPU版本)

文章目录 1. 什么是PyTorch2. PyTorch的安装与配置(无GPU)2.1 创建环境2.2 安装pytorch库(无GPU)2.3 验证安装结果 1. 什么是PyTorch PyTorch 是一种用于构建深度学习模型且功能完备的开源框架,通常用于处理图像识别和…

计算机网络学习实践:模拟RIP动态路由

计算机网络学习实践:模拟RIP动态路由 模拟动态路由RIP协议 1.实验准备 实验环境:华为模拟器ENSP 实验设备: 3个路由器,3个二层交换机(不是三层的),3个PC机 5个网段 192.168.1.0 255.255.…

【C++】STL:栈和队列模拟实现

💞💞 前言 hello hello~ ,这里是大耳朵土土垚~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页&#x…

spring boot sso

代码:https://gitee.com/forgot940629/ssov2 授权服务 登录成功后,session中会存储UsernamePasswordAuthenticationToken,之后每次请求code时都会用UsernamePasswordAuthenticationToken生成OAuth2Authentication,并将OAuth2Aut…

【远程连接服务器】—— Workbench和Xshell远程连接阿里云服务器失败和运行Xshell报错找不到 MSVCP110.d的问题分析及解决

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、远程连接不上服务器1. Workbench远程连接失败2.Xshell也连接不上3.解决方法(1)问题描述:(2)解决: 4.再次连接服务器 二、运行Xshell…

SpringBoot 基于jedis实现Codis高可用访问

codis与redis的关系 codis与redis之间关系就是codis是基于多个redis实例做了一层路由层来进行数据的路由,每个redis实例承担一定的数据分片。 codis作为开源产品,可以很直观的展示出codis运维成本低,扩容平滑最核心的优势. 其中&#xff0…

算法第三天力扣第69题:X的平方根

69. x 的平方根 (可点击下面链接或复制网址进行做题) https://leetcode.cn/problems/sqrtx/https://leetcode.cn/problems/sqrtx/ 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被…

【实战JVM】-实战篇-06-GC调优

文章目录 1 GC调优概述1.1 调优指标1.1.1 吞吐量1.1.2 延迟1.1.3 内存使用量 2 GC调优方法2.1 发现问题2.1.1 jstat工具2.1.2 visualvm插件2.1.3 PrometheusGrafana2.1.4 GC Viewer2.1.5 GCeasy 2.2 常见GC模式2.2.1 正常情况2.2.2 缓存对象过多2.2.3 内存泄漏2.2.4 持续FullGC…