Java开发中,很多工作比较繁琐:新功能开发完毕,测试,修改配置文件,打包,发布…我们时常能听到将开发流程自动化的声音,然而实际真正将自动化落地的有多少呢,你还在一遍遍的用IDE打包,然后手工部署吗,现在我们需要将这一切完全自动化,专心写代码:)

一 基础环境搭建篇

注:以下环境除Nexus外,其他都需要在同一台机器中安装,所有操作是在服务器中,不是本地开发环境,所以会省略一些不必要的步骤。

操作系统:

Ubuntu 15.10Server x86_64 4.2.0-30-generic

JDK:

1.7.0_80 64-BitServer VM

Maven:

Apache Maven 3.3.3

Jenkins:

jenkins1.653(war)

(一) 安装JDK

1.创建文件夹

$ sudo mkdir /usr/lib/jvm

2.解压文件

$ sudo tar -zxvf /tmp/jdk-7u80-linux-x64.tar.gz -C /usr/lib/jvm

3.配置默认jdk

$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_80/bin/javac" 1 \

&& sudo update-alternatives --set javac /usr/lib/jvm/jdk1.7.0_80/bin/javac \

&& sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_80/bin/java"1 \

&& sudo update-alternatives --set java /usr/lib/jvm/jdk1.7.0_80/bin/java

4.检查

$ java -version

java version"1.7.0_80"

Java(TM) SERuntime Environment (build 1.7.0_80-b15)

Java HotSpot(TM)64-Bit Server VM (build 24.80-b11, mixed mode)

(二) 安装Maven

本地配置还可参考《Maven学习笔记一:安装和基本配置》一文,其中有更详细的内容

1.解压文件

$ sudo tar -zxvf /tmp/apache-maven-3.3.3-bin.tar.gz -C /var/lib

2.创建软链接:

$ sudo ln -s /var/lib/apache-maven-3.3.3 /var/lib/maven

3.修改配置文件

$ mkdir ~/.m2 && cp /var/lib/maven/conf/settings.xml ~/.m2

$ vi ~/.m2/settings.xml

增加如下两个节点:

...

nexus-snapshots

deployment

deployment123

...

...

jdk17

true

1.7

1.7

1.7

1.7

...

如果你的项目中没有单独配置nexus私服,那么这里需要把nexus地址添加进来:

nexus

*

Human Readable Name for this Mirror.

http://192.168.0.103:8081/nexus/content/groups/public

保存退出

4.配置环境变量:

$ sudo vi /etc/profile

增加M2环境变量:

export M2_HOME=/var/lib/maven

export PATH=$M2_HOME/bin:$PATH

保存退出

使立即生效(注意前面有个点):

$ . /etc/profile

检查:

$ mvn -version

Apache Maven 3.3.3(7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T19:57:37+08:00)

Maven home:/var/lib/maven

Java version:1.7.0_80, vendor: Oracle Corporation

Java home:/usr/lib/jvm/jdk1.7.0_80/jre

Default locale:en_US, platform encoding: UTF-8

OS name:"linux", version: "4.2.0-30-generic", arch:"amd64", family: "unix"

(三) 搭建Nexus私服

(四) 安装Jenkins(需要JDK1.7+,tomcat方式)

下载:http://jenkins-ci.org/

1.创建文件夹

$ sudo mkdir /var/lib/jenkins

2.安装tomcat:

$ sudo tar -zxvf /tmp/apache-tomcat-7.0.65.tar.gz -C /var/lib

$ sudo ln -s /var/lib/apache-tomcat-7.0.65 /var/lib/tomcat7

3.添加URIEncoding到conf/server.xml中以下部分:

$ cd /var/lib/tomcat7

$ sudo vi conf/server.xml

4.添加环境变量:

$ sudo vi bin/catalina.sh

CATALINA_OPTS="-DJENKINS_HOME=/var/lib/jenkins-Xmx1024m"

注意:如果运行一段时间后,Jenkins无法登录,老是返回登录页面,并且后台老是报错:

WARNING: There was an OPT answer. Not currently handled. Option code: 65002 data: 79C6D1DFFA1BBEFC

那就在环境变量中再加入一个变量:

-Dhudson.DNSMultiCast.disabled=true

5.复制文件

$ cd /var/lib/tomcat7

$ sudo cp /tmp/jenkins.war webapps

6.启动:

$ sudo ./bin/startup.sh

7.访问http://192.168.1.130:8080/jenkins

8.安装必备插件

1). Publish OverSSH(用于ssh远程登录及执行远程命令)

点击系统管理->管理插件

点击可选插件,在右上角过滤框输入ssh,可以看到有很多ssh相关的插件,其中主要有三个可用的,分别是SSH Plugin,Publish Over SSH,和SSH2 EasyPlugin,

经过使用,发现PublishOver SSH这个插件最好用,推荐使用这个。

java AC 自动机 jar包 java自动化打包_java

2).FindBugs Plug-In

该插件要配合findbugs的Maven插件,用于展示bug报告。FindBugs是一款静态代码审查工具,能够在开发阶段找出一些容易忽略的问题和低级的错误。

同样,在可选插件中,输入findbugs,找到FindBugs Plug-In,勾选安装即可。

到此我们第一阶段的准备工作就告一段落了,在下一章节中,我们主要学习如何配置并使用这一套环境来规范并加速我们的开发。

参考:https://wiki.jenkins-ci.org/display/JENKINS/Tomcat