spring boot 微服务 启动指定目录所有jar包脚本(windows git bash(mintty))

41 篇文章 1 订阅
5 篇文章 0 订阅

在开发过程遇到项目依赖很多服务,想在本地调试,但是idea启动这么多服务很费事,而且平时也不需要修改,但是服务之间有依赖,这时候写了个自动启动当前目录jar包(spring boot)的脚本,

把jar包(spring boot)打好,放到目录里,run下就可以启动所有的jar包了! 

用了git安装的时候带的mintty(windows中支持bash shell)

文件名: run.sh

#!/bin/bash
allJar=`ls *.jar`
active="local"
if [ -n "$1" ]
then
	active=$1
fi
echo "active = $active"
for jar in $allJar
do
	echo "run ${jar} ---------------------" 
	mintty -s 100,40 -t $jar -e java -jar -Xms100m -Xmx500m -XX:PermSize=128M -XX:MaxPermSize=256M -Dspring.profiles.active=${active} $jar &
	#eureka 运行后等待
	if [ `expr match $jar ".*eureka.*"` -ge 6 ]
	then
		echo "eureka 等待9秒"
		sleep 9
	fi
	echo "等待5秒"
	sleep 5
	echo "end ${jar} ---------------------"
done

运行方法: run.sh 或者指定dev环境(Dspring.profiles.active)配置运行 run.sh dev

注意:如果目录放置了配置文件将会载入配置文件,而不会使用jar包里的配置

补充一个可以控制参数和端口自增的自动脚本:

#!/bin/bash
allJar=`ls *.jar`
active="local"
port=12999
if [ -n "$1" ]
then
	active=$1
fi
echo "active = $active"
for jar in $allJar
do
    for nowVer in 1.1.0 1.1.8 1.2.0 1.2.1 1.3.5 1.5.8 2.0.0 2.1.0 2.1.5 3.0.0 4.5.1
    do
        echo "run ${nowVer} ${port} ${jar}  ---------------------" 
        mintty -s 100,40 -t $jar-${nowVer}-${port}-${active} -e java -jar -Xms100m -Xmx500m -XX:PermSize=128M -XX:MaxPermSize=256M -Dapollo.bootstrap.enabled=false -Dspring.profiles.active=${active} $jar --server.port=${port} --eureka.instance.metadata-map.version=${nowVer} &
        #eureka 运行后等待
        if [ `expr match $jar ".*eureka.*"` -ge 6 ]
        then
            echo "eureka 等待6秒"
            sleep 6
        fi
        echo "等待2秒"
        sleep 2
        echo "end ---------------------------------------"
        port=`expr $port + 1`
    done
done
echo "运行完成等待20秒 ------"
sleep 20

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值