首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Jenkins初级使用过程中的异常处理(1)

Jenkins初级使用过程中的异常处理(1)

作者头像
一夕如环
发布于 2018-08-08 07:35:42
发布于 2018-08-08 07:35:42
1.1K0
举报

在使用Jenkins一些基本功能的时候,或者说是基本插件的时候,会遇到各种各样的报错。这里就设想模拟一下,重现一下以前遇到过的问题,记录一下。虽说是Jenkins使用过程中出现这样的问题,但实际上可以把这种思路应用在运维其他问题的排查逻辑上面。这种分享也符合我们的技术积累信条,欲成大事,比以史为鉴。

一、在使用插件Invoke Phing targets的时候。

1、报错:java.io.IOException: Cannot run program "phing" (in directory "/var/lib/jenkins/workspace/**"): error=2, No such file or directory

在使用Invoke Phing targets插件的过程中,就是要读取系统的xml文件,如果没有安装phing工具的话就读取失败,从而整个构建都会失败。在Debian系列的系统里面,这里是用Ubuntu 18.04就用apt在线安装phing。

命令:apt-get install phing

重新构建发现问题解决了。

2、报错:/var/lib/jenkins/workspace/boztax/build.xml:104:75: buildnumber not defined!

这种问题就是在执行build.xml的过程中发现里面的配置不对的报错。错误提示中是变量buildnumber没有定义,印象中是控制台定义,然后build.xml调用。我们先回到控制台,

我们看到问题了,是控制到定义buildnumber的时候放错了位置,导致没有生效,然后build.xml调用的时候就报错了。改正的时候就解决。

二、使用publish over ssh的时候的错误。

添加构建步骤。'Send files or execute commands over SSH',我们就可以连着打包和发送这两个步骤一起来使用。

我们打包好文件,按照逻辑就应该发送过去,之后再解压。可是,构建失败了,我们看看失败的控制台输出,

绿色的表示构建步骤已经通过,红色的部分表示开始报错,是我们重点分析的部分。

绿色部分也有好几个报错,但是都是定义文件中的定义。比如说,删除dist文件夹,那是因为在我们生成的文件中标避免冲突,如果没有这个文件,那就应该这样,没有找到可删除的文件。绿色最后一行也是表明文件已经打包。

红色部分就是在远程服务器上面说找不到文件,那很有可能就是本地生成了,而没有传过去。下面验证一下,

先去本地看看有没有文件,

已经查证生成了打包文件,前面我们配置了ssh key到远程服务器,现在再次验证一下文件到底能不能传过去,

证明私钥可用,看看控制台验证,

 控制台测试成功!

既然没有在传输的时候报错,下一个猜想就是可能传过去了,但是控制台的目录设置错乱,不知道传去远程服务器哪个位置了。(实际上经过了半天的思索才觉得有这种可能)

怎么在目录前缀就有/root呢?后面的目录就正确。。控制台设置的明明就是/home/data啊。

但是,在考虑的同时,想起/root在哪里出现过,没错,

就是这里,在系统全局配置的时候。关于ssh的远程根目录有设置,东西放错位置了,所以tar解压的时候找不到文件。改回来的话,一切迎刃而解。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-08-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Jenkins的初级应用(2)-Invoke Phing targets
    Invoke Phing targets这个插件主要是读取xml形式包括自动化测试打包部署的配置文件,然后根据流程走下来。用phing命令读取并执行xml配置文件,然后执行定义的步骤。比如check、tar、phpunit操作。本文用tar这个功能来介绍 Invoke Phing targets 插件,顺便也介绍一下tar这个通用的功能,在我们日常的自动化构建的应用。
一夕如环
2018/08/08
5040
Jenkins的初级应用(2)-Invoke Phing targets
Jenkins自动构建部署项目到远程服务器上
启动命令: java -jar jenkins.war 启动jenkins
全栈程序员站长
2022/09/05
3.2K0
Jenkins自动构建部署项目到远程服务器上
别当工具人了,手摸手教会你 Jenkins !
“唉,每天提交完代码都得自己打包再部署到测试环境和开发环境,好麻烦啊!都快变成运维了”
蔡不菜丶
2020/12/22
1.7K0
别当工具人了,手摸手教会你 Jenkins !
【Jenkins 插件】使用 Publish Over SSH 远程传输文件和自动部署
一般来说,使用 Jenkins 可以完成整个 CI/CD 的操作,之前关于源码下载、镜像构建、镜像推送等操作都只能算是 CI 的步骤,而这篇文章就来分享一下使用 Jenkins 完成一系列包括构建和部署的操作,同时记录一下我对 Publish Over SSH 插件的用法的理解。
Hopetree
2022/09/26
9.1K0
【Jenkins 插件】使用 Publish Over SSH 远程传输文件和自动部署
Jenkins使用教程
检查是否安装了 Publish over SSH 和 Deploy to container (Plugin) 以及Gitee插件。
全栈开发Dream
2021/05/29
2.5K0
Jenkins使用教程
Jenkins + Docker + Maven + Windows 一键部署 Spring Boot 程序到远程 Linux 服务器
https://blog.csdn.net/qq_29689343/article/details/131349578
訾博ZiBo
2025/01/06
2570
Jenkins + Docker + Maven + Windows 一键部署 Spring Boot 程序到远程 Linux 服务器
Jenkins+Maven+Git(GitLab)持续集成Java项目
参考:https://ken.io/note/centos7-gitlab-install-tutorial
KenTalk
2019/08/12
6.1K0
Jenkins+Maven+Git(GitLab)持续集成Java项目
Jenkins实例 自由风格项目--构建环境
With Ant:选择这个工具,并指定ant版本和jdk版本。这两个工具的版本我都事先在服务器上安装,并且在jenkins全局工具中配置好了。
陈不成i
2021/06/04
6440
Jenkins Jenkins结合GIT Maven持续集成环境配置
下载地址:https://www.kernel.org/pub/software/scm/git/git-1.8.3.1.tar.gz
授客
2019/09/11
1K0
Jenkins Jenkins结合GIT Maven持续集成环境配置
Jenkins敏捷开发 自动化构建工具
Jenkins 是一款自动化构建工具,能够基于 Maven 构建后端 Java 项目,也能够基于 nodejs 构建前端 vue 项目,并且有可视化 web 界面。
赛先生和泰先生
2022/02/11
1.1K0
Jenkins敏捷开发 自动化构建工具
Jenkins远程发布制品
WEB服务很少会与Jenkins服务器在同一台机器,所以需要将构建好的制品包,发放到远程服务器进行部署。
陈不成i
2021/06/04
5950
Jenkins部署Spring Boot项目步骤及脚本示例
- 登录Jenkins管理界面,点击“新建项目”,选择“Pipeline”。
用户7353950
2024/06/05
1K0
Jenkins部署Spring Boot项目步骤及脚本示例
还在手动部署jar包吗?快速掌握Jekins安装,教你使用jekins的实现持续交付
Jenkins Jenkins: 开源软件项目 基于Java开发的一种持续集成工具 用于监控持续重复的工作 旨在提供一个开放易用的软件平台, 便于软件的持续集成 基于Docker安装Jenkins 与持续集成中的GitLab Runner应该分布在不同的服务器上 创建工作目录: /usr/local/docker/jenkinschown -R 1000 /usr/local/docker/jenkins/dataversion: '3.1' services: jenkins: restart:
攻城狮Chova
2021/09/06
9400
还在手动部署jar包吗?快速掌握Jekins安装,教你使用jekins的实现持续交付
Jenkins集成Github自动部署
https://mirrors.huaweicloud.com/java/jdk/8u151-b12/
SAnBlog
2020/08/18
1.1K0
Jenkins集成Github自动部署
还在手动部署jar包吗?快速掌握Jenkins安装,教你使用Jenkins实现持续交付
Add post-build step:Send files or execute commands over SSH
攻城狮Chova
2022/01/22
9950
喝杯咖啡,一键部署前端项目
这次我们要接着上面的话题聊下如何通过 Jenkins 工具一键部署 Gitlab 上前端代码到服务器。
悟空聊架构
2024/03/22
3670
喝杯咖啡,一键部署前端项目
jenkins系列(2)pipeline
pipeline是部署流水线,它支持脚本和声明式语法,能够比较高自由度的构建jenkins任务.个人推荐使用这种方式去构建jenkins。
六个核弹
2022/12/23
1.5K0
jenkins系列(2)pipeline
jenkins 入门教程(中)
接上回继续,本文以我托管在bitbucket上的一个开源项目spring-boot-rest-framework做为演示,讲解如何创建自动化部署。 一、创建item 点击ok继续,item的详情页面很
菩提树下的杨过
2018/01/18
1.6K0
jenkins 入门教程(中)
Jenkins Publish over ssh部署
Jenkins远程部署,一开始没有任何头绪,想了很多方案. 因为两台机器都是windows系统,所以想到publish over cifs, 但是这个网上资料太少,貌似只能内网使用。又想到了Jenkins 分布式构建,但是Jenkins构建的代码和产物最后自动拷贝到主节点。而远程机器其实是客户方的机器,所以这个分布式构建并不适用。最后还是选定publish over ssh来实现远程部署。 
用户5760343
2022/05/24
1.5K0
Jenkins Publish over ssh部署
基于 Github+Jenkins+Maven+Docker 自动化构建部署
传统的开发、测试、部署方式,是由开发人员本机或打包机进行打包,将war包提交给测试人员部署,测试通过后,再由实施人员负责部署到预发、生产环境中。中间的衔接不连贯,容易出错,而且打包、部署存在重复的工作量。自动化构建部署(CICD)就是解决该问题,将从开发到部署的一系列流程变成自动化,衔接连贯,在构建失败时能够告知开发,构建成功后能够告知测试和实施人员。无论大中小公司,都应该有此流程。
DevOps时代
2019/08/21
3.9K0
基于 Github+Jenkins+Maven+Docker 自动化构建部署
相关推荐
Jenkins的初级应用(2)-Invoke Phing targets
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档