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项目中,让它简化构建和部署操作. 一. ...
随机推荐
- Android 获取 AudioRecord 麦克风音量大小并做选择性发送
extends:http://blog.csdn.net/alvinhuai/article/details/8955127,http://mikespook.com/2010/11/android- ...
- 关于tab选项卡,选项的css问题。
刚开始的思路是:让上面的选中的选项背景变成白色,让下面的层position:absolute;z-index:-1;top:1px,就能盖得上上面的横线.实践证明,这样是能盖得上,但是单选按钮不能点了 ...
- Sanatorium
Sanatorium time limit per test 1 second memory limit per test 256 megabytes input standard input out ...
- Shell特殊变量列表
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数是$1,第二个参数是$2. $# 传递给脚本或函数的参数个数. $* 传 ...
- 在DLL中导出另一静态库中的函数
开发环境: win7_x64.VS2013 应用场景: 动态库A依赖动态库B,而动态库B又使用了静态库C:有些情况下,我们需要将C从B里面导出,然后提供给A使用. 正文: Step1: 1.新建测试静 ...
- Git学习 -- 冲突解决
当连个分支对统一文件提交了不同修改时,可能会出现冲突,例如: $ git merge feature1 Auto-merging readme.txt CONFLICT (content): Merg ...
- 转:Jmeter进行分布式性能测试
由于Jmeter本身的瓶颈,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误.要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 ...
- LoadRunner监控Unix、Windows方法及常用性能指标
目 录 一.LoadRunner监控Linux资源.... 3 (一).准备工作... 3 1.可以通过两种方法验证服务器上是否配置了rstatd守护程序:... 3 (2)使用find命令... ...
- Redis(2)用jedis实现在java中使用redis
昨天已经在windows环境下安装使用了redis. 下面准备在java项目中测试使用redis. redis官网推荐使用jedis来访问redis.所以首先准备了jedis的jar包,以及需要依赖的 ...
- Php和httpd.conf的配置
http://www.cnblogs.com/homezzm/archive/2012/08/01/2618062.html http://book.51cto.com/art/201309/4096 ...