1 总体说明
本文主要介绍在研发实战时,通过Jenkins解决企业级软件构建打包一些实用场景。通常是在打包构建前,通过命令和工具进行预处理,避免修改源码,可按需配置构建任务,自动持续集成。
2 Jenkins简介
2.1 复制任务
研发实战创建构建任务,推荐从已有的构建任务进行复制,然后根据应用场景进行个别调整,这种方式稳定和效率高,除非是开拓型构建任务。
2.2 修改源码地址
在源码管理选中git, 然后输入项目的git地址,以及权限账号,并且执行仓库分支,默认是master。
2.3 指定具体的pom文件
在构建中,加入调用 maven,配置maven版本和名称,并且指定pom文件。
clean install deploy -Dmaven.test.skip=true
3 实用场景
3.1 JS压缩
旧系统或者使用原生的html+js进行开发,未采用新的vue开发和编译打包,那么为了提升前端资源性能,除了在nginx上开启gzip,还可以对js进行压缩,比如去掉注释,去掉空行,变量名变短等。如果在编码阶段每次修改,点击下编译压缩,最后提交到源码仓库中,不仅研发效率有所阻碍,并且可能导致压缩和源码提交不一致。
3.1.1 引入组件
引入yuicompressor组件,也可以是其它组件,这个不是重点。该组件的作用是提供对js进行压缩能力。
3.1.2 编写ant文件
执行java jar 可以通过编写ant文件来调用,如下,编写处理任务,分两步,第一步压缩,第二步复制。
<project name="builder" default="all" basedir=".">
<property name="wd" value="${basedir}" />
<property name="yuicompressor-jar" value="${basedir}/yuicompressor.jar" />
<target name="compress">
<apply executable="java" parallel="false" verbose="true" dir="${wd}/com.component.web" dest="${wd}/com.component.web">
<fileset dir="${wd}/com.component.web">
<include name="**/*.js" />
<exclude name="**/*.min.js" />
</fileset>
<arg line="-jar" />