对于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=javaelseJAVA_EXECUTABLE=$JAVA_HOME/bin/javafi# Spring Boot应用jar文件路径APP_JAR=/path/to/your/springboot-app.jar# 应用程序运行所需的JVM参数(例如:内存大小)JAVA_OPTS="-Xms512m -Xmx1024m"# 将日志输出重定向到一个文件LOG_FILE=/path/to/your/logfile.logexec $JAVA_EXECUTABLE $JAVA_OPTS -jar $APP_JAR >> $LOG_FILE 2>&1 &# 获取应用的进程ID以便后续可能的操作PID=$!# 输出进程IDecho "Application started with PID: $PID"

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

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

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