1.安装JDK

JDK下载:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

新建安装目录:

mkdir /usr/local/java

解压安装:

tar -zxvf ./jdk-8u51-linux-x64.tar.gz -C /usr/local/java/

修改环境变量:

vim /etc/profile

添加:

#JAVA_HOME

export JAVA_HOME=/usr/local/java/jdk1.8.0_51/bin

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

保存退出

使profile文件生效:

source /etc/profile

将安装的jdk设置为默认版本:

update-alternatives --install /usr/bin/java java /usr/local/java/jdk1.8.0_51/bin/java 300

update-alternatives --install /usr/bin/javac javac /usr/local/java/jdk1.8.0_51/bin/javac 300

update-alternatives --install /usr/bin/jar jar /usr/local/java/jdk1.8.0_51/bin/jar 300

update-alternatives --config java

键入选择的编号:1

测试:出现如下信息则安装成功

java -version

2.安装tomcat

Tomcat下载:

http://tomcat.apache.org/download-80.cgi

新建tomcat安装目录

mkdir /usr/local/tomcat

解压安装

tar -zxvf ./apache-tomcat-8.0.24.tar.gz -C /usr/local/tomcat/

配置环境变量

vim /etc/profile

添加如下东西

#TOMCAT_HOME

export TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-8.0.24/

export PATH=${TOMCAT_HOME}/bin:$PATH

保存退出

使profile文件生效

source /etc/profile

测试:输入startup.sh 出现如下信息 安装成功

startup.sh

3.安装maven

下载地址:

http://maven.apache.org/download.cgi

安装:

tar -zxvf ./apache-maven-3.3.3-bin.tar.gz -C /usr/local/maven/

添加环境变量

vim /etc/profile

添加:

#MAVEN_HOME

export MAVEN_HOME=/usr/local/maven/apache-maven-3.3.3

export PATH=${MAVEN_HOME}/bin:$PATH

保存

使profile文件生效

source /etc/profile

测试:

mvn -v 出现如下信息表明maven配置成功

4.配置Tomcat与maven

新建maven本地库文件夹:

mkdir /usr/local/maven/apache-maven-3.3.3/maven-repo

进入mavenhome/conf目录:

对setting.xml配置可执行权限:

chmod 777 settings.xml

修改setting.xml文件:

vim settings.xml

添加如下内容

<localRepository>/usr/local/maven/apache-maven-3.3.3/maven-repo</localRepository>

<server></server>中添加如下内容

<server>

<id>tomcat</id>

<username>admin</username>

<password>admin</password>

</server>

保存 退出

进入tomcathome/conf目录

对tomcat-users.xml配置可执行权限:

chmod 777 tomcat-users.xml

编辑tomcat-users.xml:

vim tomcat-users.xml

添加如下内容:

<role rolename="admin-gui"/>

<role rolename="admin-script"/>

<role rolename="manager-gui"/>

<role rolename="manager-script"/>

<role rolename="manager-jmx"/>

<role rolename="manager-status"/>

<user username="admin" password="admin"

roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>

保存,退出。

5.安装git

首先 更新系统:

sudo yum update

安装依赖的包

sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

下载Git并解压

wget https://github.com/git/git/archive/v2.3.0.zip

unzip v2.3.0.zip

cd git-2.3.0

make prefix=/usr/local/git all

sudo make prefix=/usr/local/git install

whereis git

配置git环境变量:

vim /etc/profile

添加:

export PATH=/usr/local/git/bin:$PATH

保存

使profile文件生效:

source /etc/profile

查看git版本:

git --version

出现如下内容表明安装成功

配置git:

git config --global user.name "zhangzhifei"

git config --global user.email "zhangzhifei@ganji.com"

查看配置信息:

cat ~/.gitconfig

创建版本库目录:

mkdir -p gitdemo

cd gitdemo

echo “README” > readme.txt

初始化版本库

git init

把当前目录下的所有文件全部添加到暂存区:

git add .

创建提交:

git commit -m "init"

查看git文件信息:

Git连接远程服务器:

cd ~/

mkdir .ssh

cd .ssh

ssh-keygen -t rsa -C "zhangzhifei@ganji.com"(填写自己邮箱地址)

出现以下提示表示,成功创建,期间会有提示按回车跟输入密码.建议一路回车按默认值即可。

添加ssh到github中:

vim id_rsa.pub

至此,git配置完成,下边测试:

cd ~

mkdir java

cd java

git clone ssh://git@192.168.2.215:9999/zhangzhifei/shopping.git 这是git项目地址

在此附上git常用命令以供使用:

git clone <address>:复制代码库到本地;

git add <file> ...:添加文件到代码库中;

git rm <file> ...:删除代码库的文件;

git commit -m <message>:提交更改,在修改了文件以后,使用这个命令提交修改。

git pull:从远程同步代码库到本地。

git push:推送代码到远程代码库。

git branch:查看当前分支。带*是当前分支。

git branch <branch-name>:新建一个分支。

git branch -d <branch-name>:删除一个分支。

git checkout <branch-name>:切换到指定分支。

git log:查看提交记录(即历史的 commit 记录)。

git status:当前修改的状态,是否修改了还没提交,或者那些文件未使用。

git reset <log>:恢复到历史版本。

6. 安装Jenkins:

下载:

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

安装:

yum install jenkins

配置jenkins端口:

vim /etc/sysconfig/jenkins

进入该文件,这个是jenkins的系统配置文件,

找到2处修改端口号:

JENKINS_PORT="8080"

JENKINS_AJP_PORT="8009"

默认是这样的,我们可以随意修改成自己需要的端口号,避免冲突(tomcat默认端口也是这样的)

这里作者修改成了:

JENKINS_PORT="8888"

JENKINS_AJP_PORT="8889"

接下来我们就可以尝试启动jenkins服务了:

sudo service jenkins start

若无法启动,操作如下:

我们可以看到jdk版本为1.7.0_25,复制该名称

vi /etc/init.d/jenkins

找到这段代码

candidates="

/etc/alternatives/java

/usr/lib/jvm/java-1.6.0/bin/java

/usr/lib/jvm/jre-1.6.0/bin/java

/usr/lib/jvm/java-1.7.0/bin/java

/usr/lib/jvm/jre-1.7.0/bin/java

/usr/lib/jvm/java-1.8.0/bin/java

/usr/lib/jvm/jre-1.8.0/bin/java

/usr/bin/java

我们会发现这里面没有叫1.7.0_25的文件目录

我们在这段代码后面加上

/usr/java/jdk1.7.0_25/bin/java

效果如下:

candidates="

/etc/alternatives/java

/usr/lib/jvm/java-1.6.0/bin/java

/usr/lib/jvm/jre-1.6.0/bin/java

/usr/lib/jvm/java-1.7.0/bin/java

/usr/lib/jvm/jre-1.7.0/bin/java

/usr/lib/jvm/java-1.8.0/bin/java

/usr/lib/jvm/jre-1.8.0/bin/java

/usr/bin/java

/usr/java/jdk1.7.0_25/bin/java

"

保存退出。重新执行启动命令。

若修改了默认端口,诸如8888,

防火墙开放8888端口

增加8888端口到防火墙配置中,执行以下操作:

[root@admin ~]# vi + /etc/sysconfig/iptables

#增加以下代码

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

重启防火墙

service iptables restart

一切OK.

7. Jenkins配置:

打开http://192.168.138.130:8888/

系统管理 -> 插件管理 -> 可更新插件

1. 更新全部可更新插件

2. 点击可选插件,选择并安装git plugin

系统管理 -> 系统设置

配置maven的setting.xml位置

配置JDK

配置GIT

邮件设置:

配置GIT:

邮件通知:

构建maven项目:

点击add 添加私钥:

复制id_rsa文件中的内容

保存  -  应用:

点击 立刻构建:

选择 console output

等待。。。。

部署成功。

git +maven+java+jenkins自动化代码持续集成的更多相关文章

  1. SpringCloud+Git+Maven+Docker+Jenkins自动化构建

    1.JDK安装-OpenJDK安装 yum list java-1.8* yum install -y java-1.8.0-openjdk-devel.x86_64 PS: JDK安装有两种方法:一 ...

  2. Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建

    详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...

  3. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

    前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...

  4. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(三):搭建jenkins集群环境

    写在前面 大家可以看到本文的配图,左边是jenkins单机环境,右边是jenkins集群.个中区别,不言而喻,形象生动. 前面我分别介绍了.net core 程序的多种部署方式(无绝对孰优孰劣): 1 ...

  5. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

    2019/1/31更新,经过我一段时间的使用 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用d ...

  6. 构建基于Jenkins + Github的持续集成环境

    搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...

  7. Jenkins——为什么使用持续集成?

    一.开发模型 1.瀑布开发模型:过程线性不可逆的开发模型 优势: 1)简单易懂 2)当前阶段完成后只需要关注后续阶段 3)为项目提供了按阶段划分的检查节点 劣势: 1)各个阶段的划分完全固定,阶段之间 ...

  8. Selenium Web 自动化 - 项目持续集成(进阶)

    Selenium Web 自动化 - 项目持续集成(进阶) 2017-03-09 目录 1 背景及目标2 环境配置  2.1 SVN的安装及使用  2.2 新建Jenkins任务3 过程分析 1 背景 ...

  9. Selenium Web 自动化 - 项目持续集成

    Selenium Web 自动化 - 项目持续集成 2017-02-13 目录 1环境准备  1.1 安装git  1.2 安装jenkins  1.3 安装jenkins插件  1.4 jekins ...

随机推荐

  1. 微信开发e.target.dataset取值undefined

    替换为: e.currentTarget.dataset.current

  2. CF696C PLEASE

    矩阵快速幂+扩展欧拉定理 对于一个矩阵\(A\),我们有\(A^n \equiv A^{n\% \phi(m)+\phi(m)}(\%m)\) 经过简单的列举或推导可得 设目前进行了\(x\)轮,\( ...

  3. 如何忽略.gitignore文件的提交

    1.默认的.gitignore文件无法忽略,如果想要忽略可以把.gitignore里面的文件转移到项目下面的 .git/info/exclude 里面, 2..gitignore可以直接使用插件,参照 ...

  4. Docker 监控之 SaaS 解决方案

    过去的一年中,关于 Docker 的话题从未断过,而如今,从尝试 Docker 到最终决定使用 Docker 的转化率依然在逐步升高,关于 Docker 的讨论更是有增无减.另一方面,大家的注意力也渐 ...

  5. Mybatis显示SQL语句

    众所周知,hibernate可以通过配置show_sql在控制台显示sql语句,Mybatis可不可以呢?当然是可以的,将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运 ...

  6. Jquery异步 Deferred Object

    Deferred Object )); return dtd.promise();};//使用$.when()为普通操作添加回调函数 为多个操作指定回调函数//$.when(deferred, def ...

  7. AIX用裸设备给表空间添加数据文件

    近期在对生产数据库表空间进行扩容,目的是春节期间保证表空间的使用率,不会出现紧急告警信息. 1.查看表空间使用率的SQL语句 col tablespace_name for a16 col SUM_S ...

  8. webpack+express多页站点开发

    学习了webpack门级的教程后,觉得可能是专门为单页应用而量身打造的,比如webpack+react.webpack+vue等,都可以解决各种资源的依赖加载.打包的问题.甚至css都是打包在js里去 ...

  9. Shell: extract more from listener.log (分析oracle监听日志)

    最近遇到了两起数据库连接数不足的问题, 通常都会预留一些会话增加的情况, 但在一些特殊情况下如连接风暴(logon storm), 如果在监听中没有做rate限流,对数据库来说巨大的冲击可能会导致数据 ...

  10. 面向对象程序设计_课堂作业_01_Circle

    The 1st classwork of the C++ program 题目: Create a program that asks for the radius of a circle and p ...