Jenkins系列二:SVN+Maven+Tomcat自动构建和部署

上一篇介绍了Jenkins的安装、简单使用和插件介绍。这篇博客着重教大家怎么通过Jenkins配合SVN、Maven以及Tomcat实现自动构建和部署。
我的博客地址:http://blog.lzoro.com 求关注~

准备篇

这里格子所用的环境如下:

1、阿里云 Linux 3.10.0-514.6.2.el7.x86_64
1、JDK1.8
2、Maven3.2.1
3、Tomcat8.0.23
4、Jenkins2.16.2

JDK

因为Maven和Tomcat都依赖与JDK环境,所以要先安装JDK。

下载地址:魔法传送门

  • Window环境安装 点击这里

  • Linux环境 点击这里,另:Linux下也可以采取RPM安装,如果需要自行百度,本篇文章着重Jenkins,这里不再赘述。

Maven

二话不说,甩手就是一个魔法传送门

1、如果是*.tar.gz文件,解压缩

tar -zxvf *.tar.gz

2、环境变量,添加到profile

vim /etc/profile

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

3、验证

mvn -v

4、其他

如果嫌弃maven*仓库慢的话,可以切换镜像到阿里的,杠杠的
<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>*</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

5、对了,没有5了,这条是出来卖萌的

Tomcat

在期待魔法传送门吗,不好意思,这里没有喔

老司机对于Tomcat应该都是比较熟悉的,所以安装过程不详细描述了,篇幅有限,不清楚的建议百度/谷歌来一发。

重点讲一下安装之后的配置问题:

1、webapp底下的manager目录不要删除,有用

2、进入配置目录,配置tomcat用户
cd /usr/local/tomcat/conf
vim tomcat-users.xml

3、添加用户信息,Jenkins远程部署时候会用到

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="password" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

4、启动Tomcat

cd /usr/local/tomcat/bin
./startup.sh

注:一定要记住用户名密码

Jenkins环境配置和插件

配置

上面我们在服务器安装了那些有的没的[JDK/Maven/Tomcat:没错,我们就是有的没的],所以需要在Jenkins控制台进行相对应的配置

1、登录控制台,如果是本机安装的话,就用127.0.0.1 Or localhost,默认端口8080,如果非本机,且修改了默认端口,请随意
http://localhost:8091/

2、点击 系统管理->Global Tool Configuration,依次修改JDK和Maven配置

3、如有需要构建结果的邮件通知或者SSH远程管理等需求的,请点击 系统管理->系统设置 进行相应的设置。

4、插件,这里需要用的几个Jenkins的插件,包括svn插件,部署插件等,请记得安装:

  • Deploy to container Plugin

  • Subversion Plug-in

  • 如有缺漏,请补充。

到这里,准备工作就算完成了,下面介绍重点,有请重点出场。

实施篇

大家好,我是重点,是时候表演真正的技术了

登录Jenkins控制台

还是原来的配方,原来的味道

http://localhost:8091

新建任务

点击新建,选择Maven,填写任务名称


配置任务

点击Apply保存。

验证

  • 进入主面板

  • 选择刚才建立的任务

  • 选择立即构建

  • 查看构建历史中的具体构建信息,如#01,选择Console Output查看控制台输出

  • 大功告成

后话

有些地方描述的不够好,或者不完整的请指出,反正我是不会改的。
有不懂的小伙伴可以留言喔


上一篇:Jenkins系列一:安装和简单配置


下一篇:Tomcat目录文件列表功能和定制化