svn + jenkins + maven 实现java环境的自动化构建和部署
1. 环境说明:
系统CentOS 7 x64
IP: 10.6.0.126
1.1 首先安装配置 svn
Centos 7 通过yum 安装svn 既可, 版本为1.7.14
# yum -y install subversion
安装完毕以后查看版本信息
# svnserve --version
添加svn运行用户
groupadd svn
useradd -g svn -s /sbin/nologin svn
添加svn版本库目录,并授权svn用户权限
mkdir -p /opt/svndata
chown -R svn.svn /opt/svndata
创建svn版本库
svnadmin create /opt/svndata/jicki
cd /opt/svndata/jicki/conf
.
├── authz svn认证文件
├── passwd svn用户文件
└── svnserve.conf svn配置文件
启动svn
svnserve -d -r /opt/svndata/
1.2 部署Jenkins
首先安装jdk 7 官网下载jdk7最新版本
rpm -ivh jdk-7u71-linux-x64.rpm
安装完成以后...安装目录为 /usr/java/jdk1.7.0_71/
接下来配置一下JDK的环境..
vi /etc/profile
在最下面添加三行
export JAVA_HOME=/usr/java/jdk1.7.0_71/
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export LASSPATH=.:/usr/java/jdk1.7.0_71/lib:/usr/java/jdk1.7.0_71/jre/lib:$CLASSPATH
使用设置生效
source /etc/profile
接下来就是安装 tomcat 了
http://tomcat.apache.org/index.html
下载最新稳定版的tomcat版本
tar zxvf apache-tomcat-7.0.57.tar.gz
mv apache-tomcat-7.0.57 /opt/local/tomcat
cd /opt/local/tomcat
vi /etc/profile
最下面添加
export TOMCAT_HOME=/opt/local/tomcat/
使设置生效
source /etc/profile
下面下载Jenkins
官网地址 http://jenkins-ci.org/
http://mirrors.jenkins-ci.org/war/latest/jenkins.war 下载最新版本
mv jenkins.war /opt/local/tomcat/webapps/
启动tomcat
/opt/local/tomcat/bin/startup.sh
http://10.6.0.126:8080/jenkins/
既可访问 jenkins
1.3 部署maven
下载地址:http://maven.apache.org/download.cgi
tar zxvf apache-maven-3.2.5-bin.tar.gz
mv apache-maven-3.2.5 /opt/local/maven
vi /etc/profile
最下面添加
export MAVEN_HOME=/opt/local/maven
export PATH=$MAVEN_HOME/bin:$PATH
使设置生效
source /etc/profile
查看是否安装成功
mvn -v
1.4 java环境自动构建部署
新建一个job



( Jenkins needs to know where your Maven2 is installed. Please do so from the system configuration. )
是因为Jenkins找不到maven的原因,点击"system configuration",是system configuration的maven配置中添加maven目录就OK。
1.5 利用maven命令创建web项目
命令格式:mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
/opt/webapp
mvn archetype:generate -DgroupId=com.myweb -DartifactId=mywebapp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
执行完毕会生成 mywebapp目录
目录结构如下
.
├── pom.xml
└── src
└── main
├── resources
└── webapp
├── index.jsp
└── WEB-INF
└── web.xml
进入mywebapp目录
cd /opt/webapp/mywebapp/
执行构建
mvn install
构建完成会生成一个target 目录
.
├── pom.xml
├── src
│ └── main
│ ├── resources
│ └── webapp
│ ├── index.jsp
│ └── WEB-INF
│ └── web.xml
└── target
├── classes
├── maven-archiver
│ └── pom.properties
├── mywebapp
│ ├── index.jsp
│ ├── META-INF
│ └── WEB-INF
│ ├── classes
│ └── web.xml
└── mywebapp.war
svn + jenkins + maven 实现java环境的自动化构建和部署的更多相关文章
- 使用Docker搭建Jenkins+Docker持续集成环境(自动化构建发布部署)
本文介绍如何通过Jenkins的docker镜像从零开始构建一个基于docker镜像的持续集成环境,包含自动化构建.发布到仓库\并部署上线. 0. 前置条件 服务器安装docker,并启动docker ...
- Jenkins+Maven+Git CI环境搭建手册
Jenkins+Maven+Git CI环境搭建手册 环境: OS:Linux version 2.6.32-220.23.2.ali878.el6.x86_64 (ads@kbuild) (gcc ...
- SpringCloud+Docker+Jenkins+GitLab+Maven实现自动化构建与部署实战
1.前言与初衷 本文章会涉及Docker常见命令基础知识点结合不同场景实操一起使用. 本文章会涉及结合工作过程中部署不同环境服务器的项目案例场景为初心进行实际细讲. 本文章主要讲述Docker.Jen ...
- 边缘化搭建 DotNet Core 2.1 自动化构建和部署环境(上)
写在前面 写这篇文章的缘由是由于笔者的对新兴技术方向有所追求,但个人资产有限,只能容许购买一台阿里云低配1核2G服务器.服务器上搭建了 Centos7 & Docker & Jenki ...
- GeneXus DevOps 自动化构建和部署流程
以下视频详细介绍了GeneXus DevOps自动化构建和部署流程,包括通过MS Bulid来管理自动化流程,自动化的架构,以及在GeneXus Server上使用Jenkins做为自动化引擎. 视频 ...
- 边缘化搭建 DotNet Core 2.1 自动化构建和部署环境(下)
写在前面 本篇文章是上一篇边缘化搭建 DotNet Core 2.1 自动化发布和部署(上)的后续操作,本文主要讲解如何开启Docker Remote API,开启Remote API后的权限安全问题 ...
- Centos7 & Docker & Jenkins & ASP.NET Core 2.0 自动化发布和部署
写在前面 Docker一直很火热,一直想把原本的Jenkins自动部署工具搬到Docker上面,无奈今年一直忙于各种事情,迟迟未实施这个事情,正好迎来了dotnet core 2.0 的正式发布,升级 ...
- 用Ant实现Java项目的自动构建和部署
原文地址:http://tech.it168.com/j/2007-11-09/200711091344781.shtml 本文请勿转载! Ant是一个Apache基金会下的跨平台的构 ...
- 用Ant实现Java项目的自动构建和部署(转)
Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能.在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作. 一. ...
随机推荐
- MVC 和 MVVM
MVVM MVVM 是 Model-View-ViewModel 的简写,MVVM 模式和 MVC 模式一样,主要目的是分离视图(View)和模型(Model) MVC 回顾 MVC 结构图 MVC ...
- oracle中触发器的讲解
触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来启动运行.即触发器是当某个事件发生时自动地隐式运行.并且,触发器不能接收参数. ...
- 会话管理---Cookie与Session
会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 保存会话数据的两种技术:Cookie,Session Cookie是客户端技术, ...
- 将所需要的图标排成一列组成一张图片,方便管理。li的妙用
我在做一个网站的header 但是视频教学里面将电话图标,微信图标,以及每一个英文字母右边的小点拼成一副图. (图片的名字是top_ioc.png)拼成的整个图片作为li的背景.通过移动就可以分别将每 ...
- 上传Android或Java库到Maven central repository(转载)
主要介绍利用Sonatype将jar或aar提交到Maven的中央仓库. 是不是希望将自己的jar或是aar传到maven官方库中,在The Central Repository中可以被其他人搜索使用 ...
- Redis(2)用jedis实现在java中使用redis
昨天已经在windows环境下安装使用了redis. 下面准备在java项目中测试使用redis. redis官网推荐使用jedis来访问redis.所以首先准备了jedis的jar包,以及需要依赖的 ...
- hdu_4352_XHXJ's LIS(数位DP+状态压缩)
题目连接:hdu_4352_XHXJ's LIS 题意:这题花大篇篇幅来介绍电子科大的一个传奇学姐,最后几句话才是题意,这题意思就是给你一个LL范围内的区间,问你在这个区间内最长递增子序列长度恰为K的 ...
- jq的事件对象的属性
1.event.type() 该方法的作用是可以获取到时间的类型 $('a').click(function(){ alert(event.type);//获取事件类型 return false;/ ...
- 手机号码抽奖系统(JS)
<html><head><title>手机号码抽奖</title><meta http-equiv="Content-Type" ...
- Centos yum 安装mysql报错 No package mysql-server available.
这是因为大多数mysql-*的资源名称被mariadb-*重命名了 所以换成 yum install mariadb-server 就可以了 PS[摘自网络] MariaDB不仅仅是Mysql的一个替 ...