Jenkins+Maven+SVN自动化部署java项目

作者:MC-闰土 时间:2021-06-01 11:28:27 

安装Jenkins

提示:首先Jenkins安装方式有2中,一种是yum安装,另一种是使用war的方式进行安装(war就需要安装tomcat)

Jenkins+Maven+SVN自动化部署java项目

官方文档:https://pkg.jenkins.io/redhat/

如果我们想使用war包的方式可以直接下载war包 

Jenkins+Maven+SVN自动化部署java项目

Jenkins访问地址:localhost:8080/jenkins

新版本的jenkins为了保证安全,在安装之后有一个锁,需要设置密码之后才可以解锁 

Jenkins+Maven+SVN自动化部署java项目

我们选择推荐安装即可 

Jenkins+Maven+SVN自动化部署java项目

安装插件中 

Jenkins+Maven+SVN自动化部署java项目

设置管理员账号密码 

Jenkins+Maven+SVN自动化部署java项目

登陆jenkins 

Jenkins+Maven+SVN自动化部署java项目

安装maven环境

参考文章:https://www.jb51.net/article/149376.htm

Jenkins 配置 

因为我们需要构建Java项目,所以需要安装一个Maven插件 
插件名称Maven Integration plugin 
系统管理-->管理插件 

Jenkins+Maven+SVN自动化部署java项目

此时我们可以在已安装的插件中找到 

Jenkins+Maven+SVN自动化部署java项目

如果:插件下载比较慢或者失败的话,可以更换一些第三方的镜像地址:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

配置Jenkins全局工具配置 

系统管理-->全局工具配置 

Jenkins+Maven+SVN自动化部署java项目

配置我们的JDK、Maven地址保存就可以 

Jenkins+Maven+SVN自动化部署java项目

Jenkins构建项目

1.1 创建maven项目 
创建maven项目,起名称 

Jenkins+Maven+SVN自动化部署java项目

1.2 设置构建参数 
这里是说我们构建的记录保留的天数与个数 

Jenkins+Maven+SVN自动化部署java项目

SVN地址以及账户的配置 

Jenkins+Maven+SVN自动化部署java项目

Jenkins+Maven+SVN自动化部署java项目

没有问题就不会报错 

Jenkins+Maven+SVN自动化部署java项目

这是maven的编译参数,如果有问题需要与研发的童鞋商议 

Jenkins+Maven+SVN自动化部署java项目

添加Shell脚本,添加的shell脚本可以是命令,也可以是执行一个脚本。 

Jenkins+Maven+SVN自动化部署java项目

构建演示: 

Jenkins+Maven+SVN自动化部署java项目

当我们执行完成之后上面的shell脚本可以是将war包复制到tomcat项目目录里

  • /jenkins/workspace/maven/bxg-ask-center-web/target

  • --jenkins主目录---项目目录----代码分支-----

Jenkins+Maven+SVN自动化部署java项目

打不打包,脚本可以移动目录,看你具体需求:

我自己写了一个脚本在此记录一下:


netstat -nptl| grep 8080 | awk '{print $7}'|awk -F '/' '{print $1}'| xargs kill -9

来源:https://chenwei.blog.csdn.net/article/details/81137692

标签:Jenkins,Maven,SVN,自动化部署
0
投稿

猜你喜欢

  • springboot访问template下的html页面的实现配置

    2023-02-09 23:33:21
  • Java中对于双属性枚举的使用案例

    2023-07-20 15:00:09
  • Java Callable接口实现细节详解

    2023-11-10 05:34:26
  • SpringBoot访问windows共享文件的方法

    2023-11-08 13:37:13
  • java循环练习的简单代码实例

    2023-11-23 21:20:28
  • Android实现人脸支付的示例代码

    2023-07-30 14:23:52
  • C语言程序设计50例(经典收藏)

    2023-07-10 08:33:19
  • Java设计模式之备忘录模式实现对象状态的保存和恢复

    2023-08-28 15:22:27
  • TransmittableThreadLocal解决线程间上下文传递烦恼

    2023-11-09 17:09:35
  • Java基础之堆内存溢出的解决

    2023-11-10 20:06:30
  • Spring Boot整合Web项目常用功能详解

    2023-06-04 17:14:21
  • 使用Springboot根据配置文件动态注入接口实现类

    2022-11-18 06:56:45
  • java实现大文件分割与合并的实例代码

    2023-11-11 04:31:21
  • Java接口默认方法带来的问题分析【二义性问题】

    2023-11-27 20:32:55
  • c#中CAD文件读取实例

    2023-07-23 19:37:59
  • Android SQLite详解及示例代码

    2023-08-04 22:26:35
  • Java实现将图片上传到webapp路径下 路径获取方式

    2023-07-10 12:44:13
  • 探讨:android项目开发 统筹兼顾 需要考虑的因素

    2023-08-05 11:21:32
  • MyBatis中使用foreach循环的坑及解决

    2023-11-02 12:47:51
  • Kotlin之在Gradle中无参(no-arg)编译器插件的使用详解

    2023-07-31 19:11:43
  • asp之家 软件编程 m.aspxhome.com