当前位置: 首页 > news >正文

springboot jar包编写启动start.sh

对于Spring Boot应用,由于其内置了用于启动的主类(默认为org.springframework.boot.loader.JarLauncher或你自定义的@SpringBootApplication注解的类),因此start.sh脚本可以相对简化。以下是一个针对Spring Boot应用的start.sh脚本示例:

#!/bin/bash# 指定Java安装路径,如果环境变量已设置,则不需要这行
#JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.402.b06-1.el7_9.x86_64# 使用JAVA_HOME来获取java可执行文件的路径
if [ -z "$JAVA_HOME" ]; thenJAVA_EXECUTABLE=java
elseJAVA_EXECUTABLE=$JAVA_HOME/bin/java
fi# Spring Boot应用jar文件路径
APP_JAR=/path/to/your/springboot-app.jar# 应用程序运行所需的JVM参数(例如:内存大小)
JAVA_OPTS="-Xms512m -Xmx1024m"# 将日志输出重定向到一个文件
LOG_FILE=/path/to/your/logfile.log
exec $JAVA_EXECUTABLE $JAVA_OPTS -jar $APP_JAR >> $LOG_FILE 2>&1 &# 获取应用的进程ID以便后续可能的操作
PID=$!# 输出进程ID
echo "Application started with PID: $PID"

请将 /path/to/your/springboot-app.jar 替换为你的Spring Boot应用的实际jar文件路径。

同样,别忘了在执行此脚本前赋予它执行权限:chmod +x start.sh

如果你的应用需要读取外部配置文件或者有其他特定的启动参数,可以通过添加 -Dspring.config.location-Darguments 等参数到 JAVA_OPTS 来实现。

相关文章:

  • AI新宠Arc浏览器真可以取代Chrome吗?
  • C#入门及进阶教程|C#基本语法(五):控制台应用程序与格式化输出
  • 【NTN 卫星通信】TN 和 NTN的Inter-PLMN应用场景
  • 【Django】Cookie和Session的使用
  • python将.db数据库文件转成Excel文档
  • VCG 网格中点细分
  • VMware虚拟机安装macOS
  • 政安晨:示例演绎Python语言的字符串与字典
  • ywtool login guard命令
  • 虚幻5源码版打包服务端
  • React 组件跨层级数据共享:createContext、useContext、useMemo
  • spring boot打完jar包后使用命令行启动,提示xxx.jar 中没有主清单属性
  • ReactNative实现一个圆环进度条
  • Docker进阶篇-Docker网络
  • 用Python Tkinter打造的精彩连连看小游戏【附源码】
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • [ JavaScript ] 数据结构与算法 —— 链表
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • docker-consul
  • go append函数以及写入
  • java多线程
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • React+TypeScript入门
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 配置 PM2 实现代码自动发布
  • 实战|智能家居行业移动应用性能分析
  • 数据结构java版之冒泡排序及优化
  • 项目管理碎碎念系列之一:干系人管理
  • hi-nginx-1.3.4编译安装
  • !!Dom4j 学习笔记
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (Git) gitignore基础使用
  • (编译到47%失败)to be deleted
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (离散数学)逻辑连接词
  • (十)T检验-第一部分
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (转)项目管理杂谈-我所期望的新人
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET Core Web APi类库如何内嵌运行?
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .NET 中使用 Mutex 进行跨越进程边界的同步
  • .net2005怎么读string形的xml,不是xml文件。
  • .NET6实现破解Modbus poll点表配置文件
  • .Net6使用WebSocket与前端进行通信
  • .Net转前端开发-启航篇,如何定制博客园主题
  • @Builder用法