springboot项目部署
启动脚本 start.sh
#!/bin/bash
# 设置JAR文件路径
JAR_PATH="your-app.jar"
# 检查JAR文件是否存在
if [ ! -f "$JAR_PATH" ]; then
echo "JAR文件不存在: $JAR_PATH"
exit 1
fi
# 启动应用
nohup java -jar $JAR_PATH > app.log 2>&1 &
# 获取进程ID
PID=$!
# 将PID写入文件
echo $PID > pid.txt
echo "应用已启动,PID: $PID"
停止脚本 stop.sh
#!/bin/bash
# 读取PID文件
if [ -f "pid.txt" ]; then
PID=$(cat pid.txt)
else
echo "PID文件不存在"
exit 1
fi
# 检查进程是否在运行
if ps -p $PID > /dev/null; then
# 发送终止信号
kill $PID
echo "已发送终止信号到PID: $PID"
# 等待进程结束
while ps -p $PID > /dev/null; do
sleep 1
done
echo "应用已停止"
# 删除PID文件
rm pid.txt
else
echo "进程未在运行,PID: $PID"
fi
使用说明:
1、修改JAR文件路径:将脚本中的 your-app.jar 替换为实际的JAR文件路径。 2、赋予执行权限
chmod +x start.sh
chmod +x stop.sh
3、启动应用:
./start.sh
4、停止应用:
./stop.sh
常用指令
java -jar mdmApp.jar --spring.profiles.active=dev
java -jar mdmApp.jar --server.port=8081
java -jar your-application.jar --spring.config.location=file:/path/to/config/application.properties
java -jar your-application.jar --spring.profiles.active=dev --spring.config.location=file:/path/to/config/
java -jar C:\Users\wuchaozhi\Desktop\中建\mdmApp.jar --server.port=8081
推荐
nohup java -jar mdmApp.jar > app.log 2>&1 &
java -jar C:\Users\wuchaozhi\Desktop\中建\mdmApp.jar --spring.config.additional-location=C:\Users\wuchaozhi\Desktop\中建\application.yaml
// 启动mdm jar包的指令
chmod -R 777 mdm_kk
nohup java -jar mdmApp.jar --spring.config.additional-location=application.yaml > app.out 2>&1 &
--spring.profiles.active=dev

pom文件配置方案
<profiles>
<profile>
<!-- 本地开发环境 -->
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
<!--配置默认的配置文件,idea开发右侧的maven-install中,profiles默认选中dev-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<!-- 测试环境 -->
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
<!-- <activation>
<activeByDefault>true</activeByDefault>
</activation>-->
</profile>
<profile>
<!-- 生产环境 -->
<id>pro</id>
<properties>
<profiles.active>pro</profiles.active>
</properties>
<!-- <activation>
<activeByDefault>true</activeByDefault>
</activation>-->
</profile>
</profiles>
对应的配置文件举例:
application-dev.yml application-test.yml application-pro.yml 也可以是目录配置方式
此处配置三种环境,用哪个环境就把那里设置为true,然后clean、install 打包后设置好了。
另外此时在配置文件添加另外一个配置也行,指定到pom文件:
#环境配置开发时使用 spring.profiles.active=@profiles.active@ 2、maven命令行打包指定
mvn clean package -Pdev
mvn clean package -Ptest
mvn clean package -Ppro
打包指定相应的配置文件。
3、配置文件指定
一般 application.properties 文件中指定环境
spring.profiles.active=test 指定下面的几个文件
4、启动jar包时指定
nohup java -jar demo-server.jar --spring.profiles.active = test > log.file 2>&1 & 直接启动指定test环境
5、虚拟机指定:
-Dspring.profiles.active=dev 6、使用时注意一下几点,配置文件加载顺序:
1)、同级情况下,application.properties文件优先级大于application.yml,前者会覆盖后者;
2)、springboot的默认加载路径有5个,分别是classpath:/、classpath:/config/、项目根路径、项目根路径/config/*/、项目根路径/config/,会从这5个路径下加载application.properties或application.yml;
3)、5个默认的加载路径的优先级为:项目根路径下的config > 项目根路径下的config/*/ > 项目根路径 > classpath:/config > classpath:/,前者会覆盖后者
7、综上6所述:优先级如下
1):根目录/config/application.properties 2):根目录/config/application.yml 3):根目录/application.properties 4):根目录/application.yml 5):classpath目录/config/application.properties 6):classpath目录/config/application.yml 7):classpath目录/application.properties 8):classpath目录/application.yml