• 简介

    前一篇随笔是安装jenkins的过程,比较简单,这一次说一下用jenkins配置以gitlab为代码管理仓库的maven项目的完整个构建过程,以及我碰到的一些问题。
    由于是maven项目,所以我们的linux系统还要安装maven,当然还有jdk

  • 软件安装

    1、jdk
      我安装的centos预安装了openjdk,这里我想用自己配置的jdk,在官网下了个1.8的,用Xftp工具把tar.gz文件拷贝到linux系统上,我是放在/usr/jdk下面,具体步骤如下

    #解压缩
    tar -zxvf jdk-8u201-linux-x64 .tar.gz //后面的是具体的压缩包名,以实际为准
    #配置环境变量
    vi /etc/profile
    #在文件末尾添加一下内容
    export JAVA_HOME=/usr/jdk/jdk1.8.0_201 //路径以实际为准
    export JRE_HOME=${JAVA_HOME}/jre   //路径以实际为准
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
    export PATH=${JAVA_HOME}/bin:$PATH

      安装完后运行java -version查看jdk版本,出现如下表示jdk配置成功

    
    
    2、安装maven
    官网下载maven3的压缩包,拷贝至linux解压缩,配置环境变量
    #解压缩
    tar -zxvf apache-maven-3.1.1-bin.tar.gz //后面的是具体的压缩包名,以实际为准
    #配置环境变量
    vi /etc/profile
    #在文件末尾添加一下内容
    export M2_HOME=/usr/maven/apache-maven-3.1.1
    export PATH=${JAVA_HOME}/bin:${M2_HOME}/bin:$PATH //path路径在原有jdk的基础上添加maven

      安装完之后运行mvn -version查看版本,如下表示maven配置成功

      修改maven配置

    //指定本地仓库地址
    <localRepository>/usr/repository</localRepository> //配置阿里云镜像,以防中央仓库下载缓慢
    <mirrors>
    <mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
    </mirror>
    </mirrors>

    3、jenkins安装
      jenkins安装我在前一篇有安装讲解

  • 配置jenkins

    安装gitlab插件,登陆jenkins进入系统管理 -->插件管理,选择可选插件,搜索gitlab,选择安装Gitlab Hook Plugin、GitLab Plugin、Gitlab Authentication plugin,点击直接安装

    安装ssh插件,在插件管理搜索Publish Over SSH,点击直接安装

    工具配置,配置jdk和maven
    进入系统管理 -->全局工具配置


    配置全局路径
    进入系统管理 --> 系统设置,设置gitlab连接

      这里的token是gitlab用户的电子令牌,点击添加,选择token,ID自己定义一个

      

    gitlab生成电子令牌过程
      我这里是汉化版,点击设置(setting),弹出用户设置页面,选择左侧的访问令牌(access tokens),按下面填写,最后生成一个token

    配置publish over ssh,这是用来jenkins构建项目之后通过ssh发送war包到实际的应用运行环境

    到这里就大致配置好了。

  • 新建项目进行构建

  • 新建任务

    选择之前配置的gitlab仓库连接

    配置项目地址

    添加构建
    选择执行shell脚本的方式构建项目

    编写shell脚本


    增加构建步骤,用来构建完成之后将编译好的文件通过ssh方式pulish到远程运行环境,我这里是本地的


    配置构建之后远程发布的配置

    保存操作,配置完成。

  • 构建  

    点击任务进入任务,点击立即构建,在下面的构建历史选择控制台输出,查看控制台信息

    编译成功。

  • 问题

    通过shell脚本编译的时候会报maven指令找不到,因为jenkins执行脚本是在/usr/bin下面找的,所以这里有两种方式。
    第一种

    在/usr/bin下面创建mvn命令的软链接

    //前面的是maven安装路径
    ln –s /usr/maven/apache-maven-3.1.1/bin/mvn /usr/bin/mvn

    第二种

    用我们前面配置的全局工具maven,配置任务的构建时,添加构建步骤选择invoke top-level maven targets,我这里显示的是“调用顶层maven目标”

最新文章

  1. javaSE基础07
  2. java 28 - 6 JDK7的新特性
  3. 转一篇老外写的博文:Android automated testing (Robotium)
  4. Python Import 详解
  5. Java编程思想(一):大杂烩
  6. js ajax上传图片到服务器
  7. Android(java)学习笔记203:网页源码查看器(Handler消息机制)
  8. BZOJ 1055 [HAOI2008]玩具取名
  9. python获取本机IP、mac地址、计算机名
  10. logstash 各种时间转换
  11. Android在API推荐的方式来实现SQLite数据库的增长、删除、变化、检查操作
  12. Oracle获取系统时间及格式化
  13. Mysql5.7忘记root密码及修改root密码的方法
  14. Silverlight将Excel导入到SQLserver数据库
  15. 从头编写asp.net core 2.0 web api 基础框架 (5) + 使用Identity Server 4建立Authorization Server (7) 可运行前后台源码
  16. iOS中 iOS10 权限崩溃问题 韩俊强的CSDN博客
  17. Loadrunner下载脚本
  18. 使用composer遇到的坑
  19. Java多线程编程核心技术(一)Java多线程技能
  20. Jenkins+PowerShell持续集成环境搭建(三)Web项目

热门文章

  1. 大数据技术之_19_Spark学习_03_Spark SQL 应用解析 + Spark SQL 概述、解析 、数据源、实战 + 执行 Spark SQL 查询 + JDBC/ODBC 服务器
  2. Docker 堆栈
  3. 强化学习(十四) Actor-Critic
  4. Python:读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误
  5. 自定义Json解析工具
  6. Flutter 异常处理之图片篇
  7. 好代码是管出来的——使用Jenkins搭建CI服务器
  8. SQLServer存储过程自制数据字典
  9. 解决WIN7启动DHCP服务报1075错误办法
  10. 微信小程序页面跳转方法和携带参数详解