返回顶部
首页 > 资讯 > 精选 >SpringBoot应用的打包和发布怎么实现
  • 527
分享到

SpringBoot应用的打包和发布怎么实现

2023-07-05 20:07:03 527人浏览 八月长安
摘要

本篇内容介绍了“SpringBoot应用的打包和发布怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 创建项目(example-f

本篇内容介绍了“SpringBoot应用的打包和发布怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1. 创建项目(example-fast)

基于 Spring Boot 创建一个 WEB 项目 example-fast。

2. 编译打包

1 采用 idea 集成的 Maven 环境来对 spring Boot 项目编译打包,可谓是超级 easy

SpringBoot应用的打包和发布怎么实现

2 mvn 命令打包

# mvn clean 清理编译# install 打包# -Dmaven.test.skip=true 跳过单元测试# -P dev 指定dev配置mvn clean install -Dmaven.test.skip=true -P dev

3. 应用发布

1 一行命令的演化
运行 Spring Boot 打包之后的 jar 方式也简单,只需一行命令就行。

java -jar /usr/local/example-fast-1.0.0.jar

此时,服务是启动了,但是不能关闭这个窗口,一旦关闭服务就停止了,不得不考虑后台运行,并且还想看日志;

java -jar /usr/local/example-fast-1.0.0.jar > example-fast.out &

执行启动时,效果如下,然后就可以轻松看日志输出了。

如果项目组中你既是研发又充当运维的角色,到这基本就完事儿了,因为相信通过熟练操作,会形成肌肉反应,你肯定能记住这一行命令。
不过,若是分工明确,生产权限隔离的话,一般都是运维同事来操作发布,所以还得想办法让运维同事省力,不得不考虑脚本化。

首先创建项目目录例如 example-fast,然后分别创建 bin、lib、logs 目录;把 example-fast-0.0.1-SNAPSHOT.jar 拷贝至 lib 目录下;bin 目录主要存放脚本。创建 start.sh 应用启动脚本; stop.sh 应用停止脚本

启动脚本(start.sh)

#!/bin/bash#配置 Java 环境变量export JAVA_HOME=/usr/local/java/jdk/jdk1.8.0_231export PATH=.:$JAVA_HOME/bin:$PATH#定义应用名App_Name=example-fast#定义应用所在目录App_Path=/home/${App_Name}#定义可执行文件的路径JAR_PATH=${App_Path}/example-fast-1.0.0.jar#JVM启动参数JAVA_OPTS="-Duser.timezone=GMT+8 -server -Xms4096m -Xmx4096m  -XX:MaxMetaspaceSize=256m -XlogGC:${App_Path}/logs/${App_Name}.gc.log -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=5 -XX:+PrintGC -XX:+PrintGCTimeStamps  -XX:+PrintGCDetails  -XX:+PrintGCApplicationStoppedTime"#启动JAVA进程函数CURRENT_COUNT=`ps -ef|grep java |grep ${App_Name} |grep -vc grep`if [ $CURRENT_COUNT -eq 0 ]then        Log_Name=$(echo ${App_Name}|awk  -F"-" '{ print $NF }')        nohup java -Dfunc_type=${App_Name}  $JAVA_OPTS  -Dfile.encoding=utf-8  -jar  $JAR_PATH  > ${App_Path}/logs/${App_Name}.out  2>&1 &  PROCESS_ID=`ps -ef | grep  "${App_Name}" |grep -v grep | awk '{ print $2 }'`      echo " ☺☺☺☺☺启动应用 ${App_Name} 成功,进程 id 为 ${PROCESS_ID} ☺☺☺☺☺ "else    echo " ☺☺☺☺☺ 应用 ${App_Name} 已经被启动了 ☺☺☺☺☺ "fi
# 执行应用启动 start.shsh start.sh

停止脚本(stop.sh)

#!/bin/bash# 定义应用名称App_Name=example-fast# 停止JAVA进程函数echo " ☺☺☺☺☺ 开始停止 ${App_Name} 应用 ☺☺☺☺☺ "ps -ef | grep ${App_Name} | grep -v grep | awk '{print$2}' | xargs killecho " ☺☺☺☺☺ 应用 ${App_Name} 停止成功!☺☺☺☺☺ "
# 执行应用停止 stop.shsh stop.sh

“SpringBoot应用的打包和发布怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: SpringBoot应用的打包和发布怎么实现

本文链接: https://lsjlt.com/news/354971.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringBoot应用的打包和发布怎么实现
    本篇内容介绍了“SpringBoot应用的打包和发布怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 创建项目(example-f...
    99+
    2023-07-05
  • SpringBoot应用的打包和发布实现
    目录1. 创建项目(example-fast)2. 编译打包3. 应用发布1. 创建项目(example-fast) 基于 Spring Boot 创建一个 WEB 项目 examp...
    99+
    2023-05-14
    SpringBoot应用打包 SpringBoot应用发布
  • Springboot怎么打包成jar发布
    这篇“Springboot怎么打包成jar发布”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Springboot怎么打包成j...
    99+
    2023-07-05
  • 怎么发布打包并发布自己的Android应用(APP)
    第一步,在Eclipse中选择需要打包的项目,然后右键--选择Export,会弹出一个打包的提示框,如下图所示。 按Next之后,会继续出现一个提示框,这里你可以选择自己需要...
    99+
    2022-06-06
    并发 app Android
  • Python怎么打包代码和发布
    本篇内容主要讲解“Python怎么打包代码和发布”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么打包代码和发布”吧!就拿我们上次演示的 用 Python 开发一个 「个人计划 to...
    99+
    2023-06-16
  • Qt5.9程序打包发布的实现
    目录编译工程运行windeployqt添加必要的库遇到的一个问题(Windows平台)Qt编译的程序如何在其他没有安装Qt的电脑上运行呢,本文将告诉你答案 编译工程 这里拿官方的一个...
    99+
    2024-04-02
  • SpringBoot打包docker镜像发布的方法
    这篇“SpringBoot打包docker镜像发布的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringBoot打...
    99+
    2023-06-30
  • 使用Docker部署打包发布springboot项目
    目录前言第一:环境第二:开始描述从搞项目到docker发布:第四:各种错误教训集合。前言 从安装docker到多种方式打包发布,编译,镜像,容器等问题,遇到种种问题,终于不负所望,一...
    99+
    2024-04-02
  • Springboot打包成jar发布的操作方法
    目录打包的方式如何打包?所遇到的问题,及解决办法解决办法如何运行它呢?看看效果关于运行命令的话可以去了解相关的命令打包的方式 打包成jar包打包成war包区别:jar包内置了tomc...
    99+
    2023-02-28
    Springboot打包成jar发布 Springboot打包jar
  • SpringBoot打包docker镜像发布的详细步骤
    目录1:首先构建一个SpringBoot项目2:编写一个controller用于测试3:本机启动观察是否能够成功访问4:打包5:找到生成的jar包位置6:jar包的启动运行测试7:编...
    99+
    2024-04-02
  • vue怎么打包发布程序
    Vue是一款流行的JavaScript框架,用于快速构建交互式Web应用程序。Vue的一个重要特性就是其灵活的打包和发布机制,让开发者可以轻松地将其应用程序打包成可部署的文件,并发布到生产环境中使用。本文将介绍Vue打包发布程序的步骤,帮助...
    99+
    2023-05-23
  • 使用jenkins一键打包发布vue项目的实现
    目录jenkins的安装安装更换端口号(默认运行在8080端口)基础配置发布vue项目安装插件-nodejs配置nodejs插件创建任务jenkins的安装 Jenkins是一款开源...
    99+
    2024-04-02
  • 如何使用Docker部署打包发布springboot项目
    这篇文章将为大家详细讲解有关如何使用Docker部署打包发布springboot项目,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言从安装docker到多种方式打包发布,编译,镜像,容器等问题,遇到种种...
    99+
    2023-06-29
  • 怎么用Python将库打包发布到pypi
    小编给大家分享一下怎么用Python将库打包发布到pypi,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1. 注册pypi账号并创建token首先访问https:...
    99+
    2023-06-14
  • springboot怎么实现接口灰度发布
    这篇文章主要介绍“springboot怎么实现接口灰度发布”,在日常操作中,相信很多人在springboot怎么实现接口灰度发布问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”springboot怎么实现接口灰...
    99+
    2023-06-29
  • springBoot+dubbo+zookeeper如何实现分布式开发应用
    小编给大家分享一下springBoot+dubbo+zookeeper如何实现分布式开发应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!环境搭建项目结构图:1.我们首先做好服务端pom.xml  &n...
    99+
    2023-06-29
  • springBoot+dubbo+zookeeper实现分布式开发应用的项目实践
    目录环境搭建1.我们首先做好服务端2.启动服务端3.我们再来做客户端4.总结环境搭建 项目结构图: 1.我们首先做好服务端 pom.xml <dependencies&...
    99+
    2024-04-02
  • springboot打包实现项目JAR包和依赖JAR包分离
    目录写在前面的默认的maven配置解决方案assembly配置maven中的配置最终打包后的效果写在前面的 当我们使用spring boot写项目时,一般都会遇到一个问题,那就是sp...
    99+
    2024-04-02
  • python程序的打包分发怎么实现
    这篇文章主要讲解了“python程序的打包分发怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python程序的打包分发怎么实现”吧!引言python编程时,一部分人习惯将实现同一个功...
    99+
    2023-07-02
  • Angular怎么编译打包并使用Docker发布
    这篇文章给大家分享的是有关Angular怎么编译打包并使用Docker发布的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。环境:Angular CLI: 11.0.6Angular: 11.0.7Node: 12....
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作