前言

介绍一下java 构建的小栗子。

正文

maven 管理

java 是用maven 管理包的,那么我们是要安装maven的。

还是那句话,安装这种东西呢,去官网下载然后自己安装,不要用yum apt这种。

官网地址:https://maven.apache.org/download.cgi

下载,然后安装即可。然后就需要配置好自己的环境变量了。

vim /etc/profile

然后再最下面把maven配置一下。

然后重新加载一下。

source /etc/profile

好的,如果安装mavnen 成功的话,那么就可以进行jenkins配置了。

在全局配置工具中,找到jdk。

然后配置maven:

然后还需要配置一些全局环境变量,在系统配置里面找到全局变量,然后找到环境变量,填写如下:

后面我们需要用到这些参数。

因为我们在国内,所以你懂得,一定需要去配置maven的国内源,不然拉不下来。

vim /service/localService/apache-maven-3.6.3/conf/settings.xml

修改两个地方:

然后还需要修改包管理地址:

这样就可以了。

然后我们要试一下构建哈,对了,我的git的代码是一个最简单的spring boot,可以自己手建设一下。

然后再构建里面配置一下打包的脚本,如下:

然后点击build,发现就会去下载,并且打包。

tomcat 安装

下载好tomcat文件,然后再bin下面运行启动文件即可。

将打包好的jar包发送到tomcat中去。

在vim tomcat-users.xml

<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/>

然后修改manager 对ip地址的限制:

你的tomcat目录/webapps/manager/META-INF/context.xml

然后需要注释掉,这个。

<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->

上面这个意思是访问地址只能是127开头的才可以访问,所以这里注释一下。

这样你就可以发现你可以访问tomcat访问地址,你的地址/manager,这样访问一下,它会让你输入账户密码,那么你就可以访问了。

那么就可以开始写脚本到tomcat了。一般有我们可以使用ftp 转移,因为有插件那么我们可以使用插件的形式。

下载下面这个插件:



然后修改配置:

这些是构建后操作,指定war文件,我虽然是spring boot,但是打包的是war包,关于如何打包成war包,可以百度一下。

我们打好的包会到/var/lib/jenkins/你的任务名字/workspace/target,所以填的就是target/*.war这样。

下面选好tomcat 版本,因为会调用tomcat接口。然后下面就是凭证,如果你阅读前面,那么你一定懂得。最后就是一个tomcat地址了。

接下来就是build过程,发现打包好,自动放在了tomcat下面,并且解析了。

jenkins 持续集成和交付——一个java构件小栗子(四)的更多相关文章

  1. jenkins 持续集成笔记2 --- 构建 Java 项目

    先说一下流程: jenkins 从 gitlab pull 代码,使用 maven 打包,然后备份原来的jar包,使用rsync同步到服务器上,重启服务. pipeline 资源去看官方中文文档 ht ...

  2. Jenkins 从小白入门到企业实践打怪放弃之路系列笔记 【持续集成与交付快速入门必备】

    Jenkins 从小白入门到企业实践打怪放弃之路系列笔记 [持续集成与交付快速入门必备]

  3. 接口自动化平台搭建(四),自动化项目Jenkins持续集成

    一.Jenkins的优点 1.传统网站部署流程   一般网站部署的流程 这边是完整流程而不是简化的流程 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试 ,如果 ...

  4. 自动化项目Jenkins持续集成

    一.Jenkins的优点 1.传统网站部署流程   一般网站部署的流程 这边是完整流程而不是简化的流程 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试 ,如果 ...

  5. 行为驱动:Cucumber + Selenium + Java(二) - extentreports 测试报告+jenkins持续集成

    1.extentreports 测试报告 pom文件 <dependency> <groupId>com.vimalselvam</groupId> <art ...

  6. 什么是 Jenkins? 运用Jenkins持续集成

    [注]本文译自:https://www.edureka.co/blog/what-is-jenkins/   持续集成是 DevOps 最重要的部分,用于集成各个 DevOps 阶段.Jenkins ...

  7. python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?

    python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...

  8. Docker+Jenkins持续集成环境(5): android构建与apk发布

    项目组除了常规的java项目,还有不少android项目,如何使用jenkins来实现自动构建呢?本文会介绍安卓项目通过jenkins构建的方法,并设计开发一个类似蒲公英的app托管平台. andro ...

  9. Jenkins持续集成学习-Windows环境进行.Net开发1

    目录 Jenkins持续集成学习-Windows环境进行.Net开发 目录 前言 目标 使用Jenkins 安装 添加.net环境配置 部署 结语 参考文档 Jenkins持续集成学习-Windows ...

  10. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

随机推荐

  1. Java 练习题 看起来很简单 写起来却有点难度

    1 import java.io.PrintStream; 2 3 /* 4 * 5 * public class ValueTransferTest4 6 *{ 7 * public static ...

  2. gRPC入门学习之旅(一)

    gRpc简介 gRPC 是Google公司开发的基于HTTP/2设计,面向移动的一个高性能.开源和通用的 RPC 框架,是一款语言中立.平台中立.开源的远程过程调用(RPC)系统. gRpc官网地址: ...

  3. Zabbix“专家坐诊”第181期问答汇总

    问题一 Q:大佬们,有没有基础的 监控模板 触发器分享下? A:你可以试一下乐维免费版(https://forum.lwops.cn/download ),里面基本的模板全齐. 问题二 Q :orab ...

  4. k8s如何对外访问service

    在Kubernetes(K8s)中,可以通过以下几种方式对外访问Service: 1.NodePort: 这是最常见的对外访问Service的方式.通过将Service的类型设置为NodePort,K ...

  5. 基于stm32H730的解决方案开发之SD卡的读写调试

    一 概述 在嵌入式小系统领域,SD卡存储是一个非常重要的功能.可从难度上,它又是非常难的.因为它涉及到两个大的功能点,一个是文件系统,这个难度非一般.另外一个是sd卡的底层驱动.涉及到的接口多,所以也 ...

  6. 基于ads1292心电数据存储和状态显示

    一 前记 ads1292芯片在专业的心电采集这块应用十分广泛.随着医疗可穿戴的发展,便携式心电测量这块前景十分广阔.基于现在的几个项目,团队在这里花费了不少精力,借此机会把这个方向打造成团队的特色之一 ...

  7. 基于python的密码生成器实例解析

    一 概念   密码生成不复杂,可是它却涉及到了string的常用技巧和一些概念 记得python中的random模块,这是所有随机数的藏身之处 记得python中的string模块,这个是字符操作的盛 ...

  8. C语言中的rand()函数实例分析

    一 前记: c语言中需要用到随机值得时候,每次都自己写,这样太浪费效率了,这次遇到了一个经典的代码,就珍藏起来吧. 二 实例分析: 1 #include <stdio.h> 2 3 int ...

  9. 主题 3 编辑器(Vim)

    主题 3 编辑器(Vim) 编辑器 (Vim) · the missing semester of your cs education (missing-semester-cn.github.io) ...

  10. day08-Java数组

    Java数组 1.数组概述 数组的定义: 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 其中每一个数据称作一个数组元素,每个数组元素可以通过一个下标来 ...