最近提交代码自动化构建发布的时候,出现了之前被删除的代码还是被打包发布了的问题。

流程是这样,jenkins通过定时任务获取git的提交,检测到有新提交时,就把代码拉下来通过maven进行build。

由于jar包太大,就没用maven打的包,使用zip命令只将除lib外的文件夹打成war包到指定目录,然后cp到另一台服务器

整个脚本是之前同事写的,经过一步一步的分析,找到了原因:使用zip -r /tmp/xxx.war * 将压缩包存入指定目录,上次的文件没有被删除。

压缩包覆盖只是会替换压缩包内相同路径下的同名文件,如果旧的压缩包的有些文件在新的压缩包中没有,这些文件还是会保留在新压缩包中。从而导致了每次发布项目都会出现被删除的代码还是存在。

解决方法就是每次压缩前先删除掉上次留下的war包即可。

第一次碰到这个问题,记录下,防止后续自己写脚本再次犯错。

linux 压缩包覆盖问题的更多相关文章

  1. Linux 压缩包管理

    压缩打包 格式 压缩工具 .zip zip压缩工具 .gz gzip压缩工具,只能压缩文件,会删除源文件(通常配合tar使用) .bz2 bzip2压缩工具,只能压缩文件,会删除源文件(通常配合tar ...

  2. linux下面覆盖文件,如何实现直接覆盖,不提示

    转自:http://w-tingsheng.blog.163.com/blog/static/2505603420124309130528/ cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当文 ...

  3. linux cp覆盖每次都有提示

    1.cp命令,目标已经存在,每次都提示是否覆盖,怎么办? 2.cp --help 可以看到选项-i的时候,才会提示,但是这里并没有-i,为什么每次都有提示? 3.原因是:这里执行的cp是一个别名,通过 ...

  4. linux压缩包安装jdk

    1.下载jdk压缩包 $ wget http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa00 ...

  5. linux压缩包管理

    1.gzip 文件 ----> .gz格式的压缩包 2.bzip2 文件 ----> .bz2格式的压缩包 3.tar -- 不使用z/j参数 该命令只能对文件或目录打包 参数: c -- ...

  6. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  7. Linux+Redis实战教程_day01_常用命令【重点】

    3.常用命令[重点] Linux命令中参数,一般都是无序的.特殊情况下除外 3.1.磁盘管理命令 ls命令:列出目录内容 参数: -a 查询所有文件和文件夹.包含隐藏的 -l 查询详细列表    ls ...

  8. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  9. Linux 基础目录和命令

    Linux 标准目录结构   初学Linux,首先需要弄清Linux 标准目录结构 / root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home --- 存 ...

随机推荐

  1. add-two-numbers

    leetcode开篇~ 问题描述: You are given two linked lists representing two non-negative numbers. The digits a ...

  2. Python ZIP 文件创建与读取

    Automate the Boring Stuff 学习笔记 02 Python 内置的 zipfile 模块可以对文件(夹)进行ZIP格式的压缩和读取操作.要进行相关操作,首先需要实例化一个 Zip ...

  3. ASP.NET路由[ASP.NET Routing]

    ASP.NET路由[ASP.NET Routing] ASP.NET路由允许你在使用URL时不必匹配到网站中具体的文件,因为这个URL不必匹配到一个文件,你使用了描述用户行为且更容易被用户理解的URL ...

  4. CentOS6.7搭建LNMP环境

    1:查看环境: [root@localhost ~]# cat /etc/redhat-release 2:关掉防火墙 #重启后生效开启 [root@localhost ~]# chkconfig i ...

  5. 10分钟写一个markdown编辑器

    marked.js Marked是一个Markdown解析引擎. vue.js Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vu ...

  6. H5——表单验证新特性,注册模态框!

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. Android HandlerThread 总结使用

    转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/6062880.html 本文出自[赵彦军的博客] 前言 以前我在 [Android Handler.Loop ...

  8. iOS开发中的数学函数

    在iOS开发当中...我们往往会涉及到一些算法...为了节省一些时间...让APP很快地被开发出来...我们需要对各类函数有一定的了解...接下来...我把部分常用函数分享出来...希望能帮到大家.. ...

  9. android MD5加密

    public class MD5Uutils {    //MD5加密,32位    public static String MD5(String str) {        MessageDige ...

  10. 简历生成平台项目开发-STEP3第一次项目例会探讨

    时间:2016.7.13周三7点半 地点:图书馆 讨论主题:项目需求和功能分析.第一次任务分配 内容:按照之前的讨论,我们认为简历生成功能,不仅要适应学生求职的需求,更多的是要在格式和内容上满足HR的 ...