在使用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解压的时候找不到文件。改回来的话,一切迎刃而解。

Jenkins初级使用过程中的异常处理(1)的更多相关文章

  1. 【Linux】【Jenkins】编译过程中遇到ERROR: Failed to parse POMs的解决方案

    自动化构建的时候报错,网搜查询说是maven的jenkinks配置问题导致的.修改系统工具配置的maven配置就可以了 Started by user XX Building in workspace ...

  2. 【Linux】【Jenkins】配置过程中,立即构建时,maven找不到的问题解决方案

    在Linux环境下配置Jenkins执行时,发现不能执行Maven,这个比较搞了. A Maven installation needs to be available for this projec ...

  3. Jenkins. 安装过程中出现一个错误: No such plugin: cloudbees-folder

    安装过程中出现一个错误: No such plugin: cloudbees-folder 安装插件,有时候会报类似的错误:An error occurred during installation: ...

  4. jenkins配置过程中踩过的一些坑

    1,编译通过之后,想要将编译好的war包放到远程服务器上,并解压 unzipBus.sh的脚本如下: #!/bin/bash jar -xvf bus.war 编译后报错:jar:Command no ...

  5. springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如果controller、service、dao抛出此类异常说明是系统预期处理的异常信息。

    springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 1.1 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeEx ...

  6. Jenkins编译过程中出现ERROR_ Failed to parse POMs错误

    一.在使用jenkins编写过程中突然出现以下问题 Parsing POMs Established TCP socket on 59407 [java] $ java -cp /var/lib/je ...

  7. Jenkins(3)- 安装Jenkins过程中遇到问题的排查思路

    如果想从头学起Jenkins的话,可以看看这一系列的文章哦 https://www.cnblogs.com/poloyy/category/1645399.html 安装Jenkins过程中,可能会遇 ...

  8. Web CI过程中的Security解决方案

    http://www.infoq.com/cn/articles/WebScan-CI 一. 当前Web应用安全现状 随着中国互联网金融的爆发和繁荣,Web应用在其中扮演的地位也越来越重要,比如Web ...

  9. 【repost】JS中的异常处理方法分享

    我们在编写js过程中,难免会遇到一些代码错误问题,需要找出来,有些时候怕因为js问题导致用户体验差,这里给出一些解决方法 js容错语句,就是js出错也不提示错误(防止浏览器右下角有个黄色的三角符号,要 ...

随机推荐

  1. sql基本的增删查改语句

    1.增---用于向表中插入新的行/数据 语法:insert into 表名(值1,值2,值3...) values(值1,值2,值3,...) 或者 语法:insert [into] <表名&g ...

  2. 如何用命令将本地项目上传到git[z]

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

  3. jQuery on() 方法 为选定已存在元素和未来元素绑定标准事件和自定义事件

    很有必要说说jQuery的on方法,这个方法存在大乾坤大奥秘,主要注意两点: 1.为已存在元素和未来元素(动态添加元素)绑定处理函数. 2.自定义一个非标准的事件并绑定处理函数. 定义和用法 on() ...

  4. js项目练习第二课

    百度输入法 <style> *{ list-style: none; text-decoration: none; padding: 0; margin: 0; } a:hover{ te ...

  5. return this 和return * this

    this是指向自身对象的指针,*this是自身对象. 也就是说return *this返回的是当前对象的克隆或者本身(若返回类型为A, 则是克隆, 若返回类型为A&, 则是本身 ). retu ...

  6. Python模拟接口登录

    参考地址:https://blog.csdn.net/rifengxxc/article/details/77414090 下面讲下关于python模拟登录实验,之前怎么调试也不行,我也是摸索了好久, ...

  7. jquery datatables+MVC+WCF

    view @{ Layout = null;} <!DOCTYPE html><html><head> <title>111</title> ...

  8. strncpy

    char* mstrncpy(char *dest, const char *src, size_t n){ size_t i; size_t j=n-; ; i < j && ...

  9. MySQL语法大全_自己整理的学习笔记(MySQL语句 整理二)

    select * from emp; #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start m ...

  10. 配置了yum本地源

    测试机不能联网  所以不能直接安装软件  只能配置本地源 1.   在联网的电脑上下载与Linux内核版本相同的镜像 2.   把此安装镜像放在此Linux测试机上  比如放在家目录下  /home/ ...