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项目中,让它简化构建和部署操作. 一. ...
随机推荐
- apicloud教程1 (转载)
非常感谢APICloud官方给我版主职位,每天都看到很多朋友提出很多问题,我就借此机会写了一系列的教程,帮助大家从小白到高手之路.系列名称:<APICloud之小白图解教程系列>,会不定时 ...
- JQuery中$.ajax()方法参数详解 (20
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- Gym 100917L Liesbeth and the String 规律&&胡搞
题目: Description standard input/outputStatements Little Liesbeth likes to play with strings. Initiall ...
- oracle-查询执行速度慢的sql
Oracle 查询每天执行慢的SQL 2014-12-11 18:00:04 分类: Oracle 链接:http://blog.itpub.net/28602568/viewspace-136484 ...
- Photos FrameWork 续
1. Model PHAsset .PHAssetCollection.PHCollectionList 是Photos框架中的模型类,PHAsset类模型是图片或者视频文件数据:PHAssetCol ...
- 一个很好的通用 excel 导出工具类
此类用主要 jxl +注解+流 实现扩展性很强,jxl性能会比poi好一点,值得我们学习. package oa.common.utils; import java.io.OutputStream; ...
- java工程开发之图形化界面之(第二课)
上一节主要是讨论小的应用程序,在这里我们将采用一种全新的方式来重新编写它. 在这里我们注重关注JFrame和JOptionPane.这些类提供了在JAVA应用程序使用图形的方法以及在JAVA程序中对I ...
- jq中的css-Dom
1,height() ,width() 此方法用来获取匹配元素的高和宽的值,如果括号内有值,则是修改匹配元素的值, 2.offset() 此方法的作用是获取元素在当前视窗的相对偏移,其中返回的对象包含 ...
- logstash安装配置
vim /usr/local/logstash/etc/hello_search.conf 输入下面: input { stdin { type => "human" }} ...
- ASP.NET Cache 类
在查找资料的过程中.原来园子里面已经有过分析了.nopCommerce架构分析系列(二)数据Cache. 接下来是一些学习补充. 1.Nop中没有System.Web.Caching.Cache的实现 ...