jenkins+Maven从SVN上构建项目的方法
作者:eastonliu 发布时间:2022-07-09 04:42:37
标签:jenkins,Maven,svn,项目
一、安装Maven
下载地址:https://maven.apache.org/download.cgi
把下载的安装包解压
tar -xvf apache-maven-3.6.1-bin.tar.gz
配置环境变量
vim /etc/profile
export M2_HOME=/usr/local/maven/apache-maven-3.6.1
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
使配置文件生效
source /etc/profile
查看版本信息
mvn -v
二、jenkins配置
1、配置jdk
先在Jenkins服务器上安装jdk
进入Jenkins页面:Manage Jenkins->Global Tool Configuration
2、配置SVN凭据
进入Jenkins页面:Credentials
3、配置Maven
进入Jenkins页面:Manage Jenkins->Global Tool Configuration
进入Manage Jenkins->Configure System,配置全局环境变量
4、新建一个Pipeline的job
脚本:
pipeline {
agent any
environment {
def sscs_ms_version = "SSCS.MS_V100R001B040"
def iCommunity_Dir = "/JenkinsPackage/iCommunity/SSCS.MS/"
def iCommunity_WorkSpace_Dir = "/var/lib/jenkins/workspace/智慧社区_01.sscs.ms"
}
stages {
stage("检出智慧社区相关代码") {
steps {
echo "开始检出 SSCS_MS 代码"
checkout([$class: 'SubversionSCM',
additionalCredentials: [],
excludedCommitMessages: '',
excludedRegions: '',
excludedRevprop: '',
excludedUsers: '',
filterChangelog: false,
ignoreDirPropChanges: false,
includedRegions: '',
locations: [[credentialsId: 'svn_readonly', #新建SVN凭据时填写的ID
depthOption: 'infinity',
ignoreExternalsOption: true,
local: 'SSCS_MS',
remote: "http://192.168.1.3/CoNET/view/trunk/sscp/sscs-ms"]],
workspaceUpdater: [$class: 'UpdateUpdater']])
echo "检出 SSCS_MS 成功"
}
}
stage("构建智慧社区相关模块") {
tools{jdk "JDK1.8"}
steps {
echo "开始构建 SSCS_MS 模块"
dir('SSCS_MS') {
sh 'mvn -X package'
}
echo "构建 SSCS_MS 成功"
}
}
stage("复制各个模块到指定目录") {
steps {
sh 'mkdir -p ${iCommunity_Dir}${BUILD_NUMBER}'
sh 'mkdir -p ${iCommunity_Dir}${BUILD_NUMBER}/${sscs_ms_version}'
dir('SSCS_MS/target') {
sh 'cp ${sscs_ms_version}.zip ${iCommunity_Dir}${BUILD_NUMBER}/${sscs_ms_version}/'
}
echo "sscs_ms的包移动成功!"
}
}
}
}
来源:https://www.cnblogs.com/eastonliu/p/11348425.html
0
投稿
猜你喜欢
- 项目要用到Webview和js交互,查了查以前的项目感觉还是有必要整理下的。 简单描述下项目中用到的地方,比如说在web页需要用到登录的地方
- Java的NIO中的管道,就类似于实际中的管道,有两端,一段作为输入,一段作为输出。也就是说,在创建了一个管道后,既可以对管道进行写,也可以
- 在Unity中实现简单的伪时间同步,只是读取数据库所在电脑的当前时间using UnityEngine;using System.Colle
- C++ 前置声明详解及实例【1】一般的前置函数声明见过最多的前置函数声明,基本格式代码如下:#include <iostream>
- C# 日历类的实现代码,具体如下所示:using System;namespace DotNet.Utilities{ ///
- 1、在Windows下用CMD netstat命令可以获得当前进程监听端口号的信息,如netstat -ano可以看到IP、port、状态和
- Android对sdcard扩展卡文件的操作其实就是普通的文件操作,但是仍然有些地方需要注意。比如:1.加入sdcard操作权限;2.确认s
- Android ListView的Item点击效果的定制
- 目录前言1、饿汉式(线程安全)⭐2、懒汉式(线程不安全)⭐3、懒汉式(加锁)4、懒汉式(双重校验锁)⭐5、单例模式(静态内部类)6、单例模式
- 思路:1.安装插件:安装log4net2.使用配置:添加log4net.config配置文件3.输出日志文件格式:添加日志配置4.Assem
- 购物车项目,业务需要实现了一个购物车的项目,简单的了解下实现逻辑:数据计算等是在Adapter中计算出来的,通过在Adapter中计算出来的
- 本文实例为大家分享了Android优酷圆形菜单的具体代码,供大家参考,具体内容如下先来看看效果:首先来分析一下:这个菜单可以分成三个菜单:1
- 本文实例为大家分享了Android实现简单旋转动画的具体代码,供大家参考,具体内容如下核心方法public void startAnimat
- 带着问题 往下看 (namesrv)我们在写组件的时候 怎么管理version如果现在让你 维护一个 各个jar包公用的属性System.e
- 本文实例为大家分享了android实现简易计算器展示的具体代码,供大家参考,具体内容如下效果图:一、如图,首先布局计算器主页显示activi
- 本文实例为大家分享了C语言实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下IDE用的是 VS2019先看效果 代码全览game.
- 本文实例讲述了Java抽象类和抽象方法定义与用法。分享给大家供大家参考,具体如下:一、Java抽象类参考资料:Java抽象类 详解1、抽象类
- 部分情况下无法通过maven仓库直接下载需要的jar包,只能讲jar包下载至本地来使用,spring boot框架内通过maven加载第三方
- 本文实例讲述了C#实现Base64处理的加密解密,编码解码。分享给大家供大家参考,具体如下:using System;using Syste
- 一. ANR场景无论是四大组件或者进程等只要发生ANR,最终都会调用AMS.appNotResponding()方法,下面从这个方法说起。以