JAR包自动启动脚本
#!/bin/bash# 脚本中只要出现执行不是true的语句,就退出不再往下执行
set -e# 导入环境变量
export jar_PATH=/data/web
export APP_PATH=/home/# 判断老的进程是否存在,若存在就杀掉
killjar()
{pid=`ps -ef|grep supplier-center |grep java |awk '{print $2}'`echo "supplier-center Id list :$pid"if [ "$pid" = "" ]thenecho "no supplier-center pid alive"elsekill -9 $pidfi
}# 调用函数
killjar# 判断老的jar包是否存在,若存在就删除
[ -f $APP_PATH/supplier-center-1.0.0-SNAPSHOT.jar ] && \
rm -rf $APP_PATH/supplier-center-1.0.0-SNAPSHOT.jar# 更新最新的jar包
mv $jar_PATH/supplier-center-1.0.0-SNAPSHOT.jar $APP_PATH# 重新启动
nohup java -jar $APP_PATH/supplier-center-1.0.0-SNAPSHOT.jar > \
$APP_PATH/admin.log &# sleep 10秒, 等待java进程完成起来
sleep 10secho 'Start success!'
sh -x supplier-center.sh #检查脚本是否有问题
#!/bin/bashcd ${WORKSPACE}/supplier-center/target
scp supplier-center-1.0.0-SNAPSHOT.jar 192.168.0.29:/data/web
ssh 192.168.0.29 "bash /data/sh/supplier-center.sh"
判断都有if语句,否则jenkins会执行不了,还有一个巨坑
#!/bin/bash# 脚本中只要出现执行不是true的语句,就退出不再往下执行
set -e# 导入环境变量
export jar_PATH=/data/web
export APP_PATH=/opt# 判断老的jar包是否存在,若存在就删除
if [ -f $APP_PATH/antSale ]; thenrm -rf $APP_PATH/antSale
fi#echo $?
#echo "###end###"
# 更新最新的jar包
if [ -f $jar_PATH/antSale ]; thenmv $jar_PATH/antSale $APP_PATH
fi
#echo $?
nohup java -jar admin-1.0.0-SNAPSHOT.jar >/dev/null 2>&1& jar启动输出日志到空
jar包引用本地同级配置文件config,解决每次合并分支更改配置文件问题,相对路径可以加个config自动识别配置文件
nohup java -jar -Dspring.config.location=/绝对路径/application.properties /xxx/xxx.jar > /xxx/xxx.log &
#!/bin/bash# 脚本中只要出现执行不是true的语句,就退出不再往下执行
set -e# 导入环境变量
export jar_PATH=/data/web
export APP_PATH=/home# 判断老的进程是否存在,若存在就杀掉
killjar()
{pid=`ps -ef|grep supplier-center |grep java |awk '{print $2}'`echo "supplier-center Id list :$pid"if [ "$pid" = "" ]thenecho "no supplier-center pid alive"elsekill -9 $pidfi
}# 调用函数
killjar# 判断老的jar包是否存在,若存在就删除
if [ -f $APP_PATH/supplier-center/supplier-center-1.0.0-SNAPSHOT.jar ]; thenrm -rf $APP_PATH/supplier-center/supplier-center-1.0.0-SNAPSHOT.jar
fi# 更新最新的jar包
if [ -f $jar_PATH/supplier-center-1.0.0-SNAPSHOT.jar ]; then
mv $jar_PATH/supplier-center-1.0.0-SNAPSHOT.jar $APP_PATH/supplier-center
fi# 重新启动
#cd $APP_PATH/supplier-center && \
#nohup java -jar /home/supplier-center/supplier-center-1.0.0-SNAPSHOT.jar > supplier-center.log &
nohup java -jar -Dspring.config.location=/home/supplier-center/config/application.yml /home/supplier-center/supplier-center-1.0.0-SNAPSHOT.jar > supplier-center.log &
# sleep 10秒, 等待java进程完成起来
sleep 10s
echo 'Start success!'
远程(jenkins)调用shell 不能正常结束
例如:nohup java -jar start.jar >log.log 2>&1 &。但是在jenkins远程调用,会把日志打印在jenkins控制台中,导致任务不能结束。通过排查,在程序运行前使用了cd命令,先cd到目录,在运行命令cd /service && nohup java -jar start.jar >log.log 2>&1 &改为绝对路径,去掉cd命令,程序正常了脚本如下:#!/bin/bashset -xkill -9 `ps -ef |grep start|grep -v grep|awk -F " " '{print$2}'`source /etc/profilenohup java -jar /service/start.jar -Xms500m -Xmx500m -Xmn250m -Xss256k -server -XX:+HeapDumpOnOutOfMemoryError > /service/Log.log 2>&1 &echo "starting service..."sleep 10#根据重启后是否有当前应用判断启动是否成功pid=$(ps -ef |grep start|grep -v grep|awk -F " " '{print$2}')#echo $pidif [ -z $pid ];thenecho "启动失败"exit 1elseecho $pid "SUCCESS"fi
jar包配置文件合并之后格式为,数据库-服务名-nacos注册地址-redis地址- 服务端口
spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedriverClassName: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://rm-wz9qbq5wc36h2b41f.mysql.rds.aliyuncs.com:3306/cloud?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8username: xiaohongyipassword: sz@147258xhyapplication:name: auction-centercloud:nacos:discovery:server-addr: 192.168.0.31:8848#server-addr: localhost:8848redis:database: 1host: 192.168.0.29port: 6379password: 123456timeout: 1000msjedis:pool:max-wait: -1msmax-active: 16max-idle: 8min-idle: 0redisson:address: redis://192.168.0.29:6379password: 123456server:port: 8098management:endpoints:web:exposure:include: "*"
alibb:sms:accessKeyId: LTAIrXEyIBbszB9Nsecret: LiGQH9Oh3WAZ3w8kG4UwwZV5qIulA2domain: dysmsapi.aliyuncs.comversion: 2017-05-25action: SendSmspay:# appId: 2019060565439456appId: 2021001199671097notifyUrl: https://api.xiaohongyi.net/test/alipay/notify/returnUrl: https://api.xiaohongyi.net/test/h5/order/returnPay/gatewayUrl: https://openapi.alipay.com/gateway.docharset: UTF-8format: json# aliPublickey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkUxyfLvcAKZYm9s4loYBxswtnwH923bzjldZpg+m+R+guFnsncgRHAufvRApL4cQjWQQT4uhk5j+DtKGNe2B+LdXsJUtirwJHS58XBzE4IObwy1X4pYU0e3FhJx3Oq8y/RzrT2HD2TCdoKMTganIW+E6fbamU2tIqIiwP+GtaZj+EDhc9j6LBKyOXowWZjV2luQNPMbETBlLtTVssTICaEAO800Vl/8QT5SlOGpe1QtQT0qIg/LQHwLfcegLNBDN1ExoQeVgghy5M8R1vseE43B/vF9lw5MksoVXuStEuswhZpgWduxZ9tQPSGIhwQ0tMR0C+1nJ3x+Ynx0kE+W3kwIDAQAB# publicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmEi0Nostyl4+uyHGP8+WbzNsZhAAx3nk6OVjoJoyAT7guVPKOAmhF2/qhM1427EvlDZ8MR83zULZ7c9clakXiBJ8+fAlOh6AN0FrC2VE4nLQaVOm1ZdCSxeVZzeVRtnvW+AekDfqslm1HTxLcZL2Vo/MOz5mi7fAwKW5y6e8PBrVXtYxJAVGqOapZS+ItRqH0Di9qS813tgmdIK4lJsPNWK3gNFSJj+tSt8kyuRMSpHlq14KUK/aKDTya5evqGDNnHb8gPukUFiMmM29R5DkkwvyI+tUf9PO3aLnNH1CoIh9pDTHs88iyLNo/hvAcavsR0fc+DP5T4bhVnNstTB+uQIDAQAB# privateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCYSLQ2iy3KXj67IcY/z5ZvM2xmEADHeeTo5WOgmjIBPuC5U8o4CaEXb+qEzXjbsS+UNnwxHzfNQtntz1yVqReIEnz58CU6HoA3QWsLZUTictBpU6bVl0JLF5VnN5VG2e9b4B6QN+qyWbUdPEtxkvZWj8w7PmaLt8DApbnLp7w8GtVe1jEkBUao5qllL4i1GofQOL2pLzXe2CZ0griUmw81YreA0VImP61K3yTK5ExKkeWrXgpQr9ooNPJrl6+oYM2cdvyA+6RQWIyYzb1HkOSTC/Ij61R/087douc0fUKgiH2kNMezzyLIs2j+G8Bxq+xHR9z4M/lPhuFWc2y1MH65AgMBAAECggEAGK8YPwsaVgYmxvB3kRpV+RptxLFtXugcOcANARhdaKRHiuLREXpGGWVzrykbIQk8fBrE0LWNtwDSEGEfUccB4HWWunC5qA0PnWVGM6erncUckSYVEeQdw8xD1GJHGR/0U4ElkxztNxGhcOa4F+XJdkiCw0ufFaCoZtG2JxO+SEOVIQVep1HpM3oMgAGR1TCCVf1D1l2NlyFf4ysvHkQJe2aWIqwvOevaSvl+Nl3ehIYvq9js/Q9Cuku3t5VZ1rABo1EyKqfCLUyj0XP/vakfxCvk52uExlWc36Zgl4yRLv6fKHvpI9GXmYrXYSmElSRArjCb4hAedPka/qnAhuZmAQKBgQDPsxtOeMpshsP8R5+nOEN5v+uMTHnKhEFcHoCJQIETg9riSMEhaVcBOBLJ6SS/SwQsjqPtklshVi1Tv3Z8Il1jeIWxNe4PJKcxTPXq2chYZtLYNwqjL2jq0IuW/Qsst4JhkHXblul+D9h5eo+WMSpPq8EYXtrjP70Y9Cs6ykCX+QKBgQC7so/gjj/sobtXfdvLos+xMxXj/YJzpsQF6znGB9mAUmlb+PDv1nOYgm2quVtgHfkmcm54dpt7EPb3oynRg2oXVGKFo7znidnEaY+kT+2sXIZiQwtXsdz4Bch7FwFJRmks8ZJ+U3BSNH6p6rdhTS+oEVykSmaXzn3M64eqkGBMwQKBgD7mJ8PY8rxxB5M0AZZ7hHuvcl73nf6FlOGX3ycxoKVPTg8vJ0W+B/o3iAEbmORRjH8N53j/1JdA6NMu7WvkYFHKYvpqsaBmYjec7fBkabbT1NBjwtXueqB57XwZP7QYEuUHAZoxlp51oAIR6r/6Pa0I/54ow7MET3jqINlZ/LvJAoGBAIt5PXaU3aV97NMvv/MK0aCQIHUhPR2pT0JCr9SaoqG7G3Vvf8IIri8mxE03nVHIFArgv3weTpzdV1de1EVOjLg3SVqa+FVpVvufoVBs4GTTADzmKviIP3XB/l6RErCbdK4j+EKMyAsd3P1wX8Ia9A3EkP24F5I4q7xpTI+O5zBBAoGAbkhyxNJIVqhUgb+UioQNaWhzZhYuG8ZSV3Q5q4OO9JjoeQdbmY8gvpu3u+cLLxv/ovg6enCOxkoQUfD6TmyRRw4iI5C2bApCZ6yNUkQb8xW2zKpGdXKSD1luwYbhjyxiMzRBKJIP7hyj9X0VfLhian4VKFf2WsWjC1ofiLRvbww=aliPublickey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvT74NkqdiScXZ4THvUZp5XMZXPAr2+08I9nNZUNzJWa96zwUafPvKTlzzr1JxRzAjz5BzTv/iIb6nTUSjC63xvixvOqmD8fvlQ8XS2GGCxqv6JJtnzXZyb7DRKT59mFJFus2I3zxA3IMFz6wso5CtQQE/E1VsAOna6pMwdseiTjGd1+OluXFWZGYd9hqBfNzrCQSr9dY8CMl1GEk/pMbErq788u6G5BNgOY6Z7IfPhkMDTjoYyfpgtvf4rVp9eu32JayoxKtoFS0XjKgl32Rxmr2GWN9gupFFAVXT4T0IPwIIzokWU2kIhd2HBRNwvx0ZTX8B7HX7E8wKokED264CQIDAQABpublicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3yaQ9Vj7ZaGQMrFLO+t4KrK3WYpk2IT3axk82B6CqilPN88xzVBAH+aT69NRNsPeOOJGtPjQhZXLZeqZrW+50K56g/RYbn8aCf3yB/7nGmHdBVlfAkLvMv5jiJ1MWjYsYUbAvdH/pPaUW59F89zWP1jURQF2ho9ewRPPLKGXnr+EkXu6SI29jJ0rbxHHsDhgieyrxYzKid3aEmrFYakpYMeDigMFJ2UU+NGFJ7FgFxUWUgqJPk5PVB1j+D/XOpGNkUeKQ3hLiCuw7HcmMUSY+nCXgMxXxqYb7D4i9dL52LWmiOVmoXGx15QzvLwL/4Pkr/3pB2xKvf/0RSuiV3HiVwIDAQABprivateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDfJpD1WPtloZAysUs763gqsrdZimTYhPdrGTzYHoKqKU83zzHNUEAf5pPr01E2w9444ka0+NCFlctl6pmtb7nQrnqD9FhufxoJ/fIH/ucaYd0FWV8CQu8y/mOInUxaNixhRsC90f+k9pRbn0Xz3NY/WNRFAXaGj17BE88soZeev4SRe7pIjb2MnStvEcewOGCJ7KvFjMqJ3doSasVhqSlgx4OKAwUnZRT40YUnsWAXFRZSCok+Tk9UHWP4P9c6kY2RR4pDeEuIK7DsdyYxRJj6cJeAzFfGphvsPiL10vnYtaaI5WahcbHXlDO8vAv/g+Sv/ekHbEq9//RFK6JXceJXAgMBAAECggEAYpnJ538f5jJTYvLQCXPsLwG03k22ba2jHaGTLvOcTM/f/wsAOHZDP1VE+yjuc8JsSLpC/+gJS116+FeG/AmoEztlSzUGdhyXRt78uOe6+f9QB/MLdhZZVzDsjgrjF+FkDr+Sns1RpnSF7U4dPLnRuT/o22zgEGj9N1cnbdMhCbVHB3nb+/QON+na71vMlvDWwCi3snxBYaQRq+0rktG7XHioqCWWwkkkT68cgpTdTEyJPeVDgm0XelA8X+IkxJxmqMzCrb+UsvYhwrlwfWWcXFvJNkFSzdLgHVjZWYgWgAbf9zDQ5MwgvJ7RmBurmoMEX8X6OWjLxRUsReCIpL614QKBgQDv3z2IxL3atrPRBgtGuTusTwqwCWlKsUlEow25U3WrTbzTnLjI4jbb1/Q7rEPQeqf2WZOgmxrVjj7d7CzQyB9hT74ytlYcIWpw/8HX5PBSZpfLhxhk5e2ScEYsl4rPpxNUhyKJ8nVRGT2EZJuLPJ86im3i8LhGWyFAtoNxx8sTjwKBgQDuJ4L+fWTBuEKdrMWLiAcRVAMHrS5fzzJfgjiuoV1Jyl+iJX64vni5hNYten8VbTPOz91tWigOA4rVnA/fS449HOOtfjnxtVauZ32ZxR+W0CwhTW8yTmpM1lOYf2cosKQABUFL6q9PvuQBaQTDrnLhiJtyEhRZagW1/Og+F+NAuQKBgHePlEJJnkAX9QTouFImHeJC+5bG+h5qw5RcmYiYWvxpoQbxBQHMD4AA4hGkSaDuoi2edIEHDpcHcbp379aZCVsdvjXUwJMA7Ocp89rCmC7aSCsASV5xZLsrDy9G0b+zDWWCfeq4WVV0+T62TvlV3B/3w9HsHk2jOq3gyx+5cDVtAoGAQz7C3Sr47T4jCTSEnw5suHbZWCyNQJ5XoeI6MQz9M13CPR2LN40It5GLjFHfWmR4UXgeFMd1MefMJt6nGKzT3+utWgqfP+GtNRehvm6LqeDj5Q9hS3oax9Foz1GCBlpCJINXWaFNmR3UcZV+s+YpKAeTpNT4C/tE24sq5IWINHkCgYEApteVE9JsBoOQEU2xedbgcWggGburP/kR3OZUgp0sqYofqYEvvvl/RXU854qg1+8IWWfbYg59ZFNQhCWFIk7J3xCdue0fFV26vEi48ehXmj05On2Ys4+i60wBsOSiwekdZca36XAF/lMSHLcV+xL0HNTJAybxxuvbxuUhVlvUToE=singType: RSA2# mybatis-plus相关配置
mybatis-plus:# xml扫描,多个目录用逗号或者分号分隔(告诉 Mapper 所对应的 XML 文件位置)mapper-locations: classpath:mybatis/*Dao.xml# 搜索指定包别名typeAliasesPackage: com.pzhu.spring.cloud.alibaba.common.domain# 以下配置均有默认值,可以不设置global-config:db-config:#主键类型 auto:"数据库ID自增" 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";id-type: auto#字段策略 IGNORED:"忽略判断" NOT_NULL:"非 NULL 判断") NOT_EMPTY:"非空判断"field-strategy: NOT_EMPTY#数据库类型db-type: MYSQLconfiguration:# 是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射map-underscore-to-camel-case: true# 如果查询结果中包含空值的列,则 MyBatis 在映射的时候,不会映射这个字段call-setters-on-nulls: true# 这个配置会将执行的sql打印出来,在开发或测试的时候可以用log-impl: org.apache.ibatis.logging.stdout.StdOutImplwx:pay:privateKey: MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCtPHwYhTSPuuQ9enp4/vZNntCItpY0/mwEjUit1VxUP7e8o/rSQHtGmlYOrVJp5JgAHUs/Q6jpNKnW2gVP/UExov6VJsDNU7si9Rp4Ne6d821a1f+Qo3fL2hET7WS1gsGSKhchujQ3A05u+SzGsqtAsteMsK7Dj/ibnIzAypAkjO55j1tQRlv1iSC0Hlt87I0HGcKEqZbKTQBJtsaY4/rKbwHZAfM3Cg6eFo+diDq7nsTSYbnr1h/HI63Bql5KNvtrfHuI4Ye6QMN2B7UHgwfgPUT64yUczNcO+Ga2mXDLL4P3ajBws55of5FqxGpTV040QdLbcBMeaQ/BLt/2vhYfAgMBAAECggEBAKF+nFUjgJ9o47MoRZocXTJ5FgAM7rRSZhJMP2/GUj878yZJW967O/DSmd0u2IBdGRIqPOaqRYG5lYb0UjWCa09BmsEikmQXZYIuKlHcPSlEMDKZApksutXv4THJgbPwRFHlKRFJC7opO+oaIhLNpvY2gtjmMNWglmtCorhrXbqjmiHAFiSsKEkNBeLTOnevyYbBVycnsppLAzZKn5HT6aH7r2R90b1Z6B4MKLkBgFRZRB/ARtfAsKHNxYfMSKjgAKjB4/Jvp2FZ9c43pIZrySYfsukr2P8AsU1xdsEiG/iZxJNB1XnByieq5KFvdiKRqtfIeY0CJCe4/DQERxaf2+kCgYEA2fJlLuyTN/AYkA7iL8eTnjU5MxpHsEXGDdmBgyumrYspA8C2F416+EzFZujfIklg3lvGloTp3l5FtTnojWNN0nJlwqTNL071XHgV3XJoLWD8uqWZlf8K5STWtxfrASXImZmaD/N3F2OirnjHNywFxetnwlS6JwWjlZktQVssVn0CgYEAy3unQnKZTdwG1pji1JHGl/aTUp4wzP7IKlFG14KyB8DSArQQ4l/TVt0VgzWEOGn0jZbUxItVXFrOqaKJk9Ztj0LImwwHzPthoXHH4N4eJQUkXpnCpYjPXWnZh69N8aCPKnBKQFP5drV2bkfMuJcZ5byTRzbxc6ET70jo8Fm2VcsCgYAZuSE2G5f4ly7e+dK6XuzOVGvO20AwzttkURKXH7TJcM5DciBLwVgNLEp0LfIAAvca52wV4dQUeb3yeMY4wcqyluvpwDezaLdO1aGHBHTFPlg100vAR1zK1ME+1OTYutPlRRrI3SxmJ01RGFIy8dAwnusdJZDfACxhgLW1rAQcpQKBgQDGuSiMWGcoBu4WvpEokIWm+4S9dwip61mJGn9ZEabUs5dmVHz42CUJ/Dh6P9W1UqUnclqw6HKhE34pZTd/TjcJZmuMIJ+trQOYLArMraA6/16ZlQjnqUj7LdjoDmjMxcWL6MZbNKe5K1dSNITW8Zq1JwmezyXXi0RwuH/l23ebKQKBgH20WoXS3XQBUWyy52BXetMw3XYTdrv79j5GEZt3D5ThASpqA0EKU91J3iZGEObxJMUpRyzBjq2rhKTNSUm6+uAMiOIVGwJth83FExhNr0Ky97tqDEO3x2HTa170LnoyOkU8q0INHUOPLrk2mCS2u+AvaWdkuijM2AS9k7F8v7tJmchId: 1605166544mchSerialNo: 738A0DD35C04DDB9507F637F943C658C29B7E685appreqUrl: https://api.mch.weixin.qq.com/v3/pay/transactions/appnotify_url: https://gateway.huaniupp.com/auction-center/api/notify/weChat/notifyappappid: wxe491e99fe54ff6fapromreqUrl : https://api.mch.weixin.qq.com/v3/pay/transactions/jsapiparamappid: wx01ff2c705ed0bf9drefundNotifyUrl: https://gateway.huaniupp.com/auction-center/api/notify/weChat/refundNotifylogistics:key: YmAhuxLp4606customer: FC2D04B3F392335E957E6455BF98ACC6secret: 1bacd0239f6741a489580fff343af87auserid: bd46d19551a94fb299405383ca20fc09ali:pay:APP_ID: 2021002190661261APP_PRIVATE_KEY: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDwhzWfGwZp6w3R0UUeZczayRiPrTraBK1troKnd6ihQumyJNDj4yTi8HofbUaskML+hiAUGo/2+FIcv0bq6j0NwVD2Ac7gHn+V3fV3mi9lqOI8yR1IB+zQiZL5b3W7vCRxs3oWkG4b7YsS6LK+xACYqLpRioHXgCyP04WCgsR/DKcaL7V3zMov/zCs7Ar1D5AKUaYWhDp/RKJQ3DaBOLFTY7HDNruwJapG3Cvlzyzt4luPpTLcZqrTpraCn2t7DrGjgKcAIDaqP2GMc+NbtFTIkVoh408dTBbWEG/pmfvW/eOwFk9olSUV6fQFFPesCatI2t4BJa3uL5vNkF3sgHxNAgMBAAECggEAdOpENkJ8q5+F6CdA4bW6Dd8SAUTDBpafdmENQTn4zeoojl826o7Or0EVG5GSeO8k2XN4xEzlDbdGspKHdkjFxJnjMLFQTcCFY+OwHaLkxxWAYuufQBQaGIPG3VhAcjDRxjLndXBfFVQx9c8Gk5PSdmINrvUUiBvVjVPT4cyOlvIuSjwzXUxCBeZ0GeOivRahQu3Le+1beGOGGC+fO5hqXUVOKyI5B4YqEoJ/NPW2MPqtSV9iTCLHpcPq3UN9P5rFbd12IH922STiep3HhdU8PSHpq5431uHhUwjX6s/yId0nwYRZqMsU/WlLmv3aiGLyRfOOElPfb2CWDno/AU0MQQKBgQD5Sg3PqO1UaU7w60xwAq30/5h83gb3IAQTBs1Q17BJ8f8iRm9s/SydFGaoxWGRPUHNhd5oOY38+QuXvACHJRqzxuS7yKUdl2oY1T042r7+woTDxdHy2/uzqcjQoLKlsLqqXNkWVKceroQiJOczm/JUz9vbfHTbJ/3q4n2m0s5SXwKBgQD3AMeGtlFB8Q0hiaEs4LDSxKfQzxzFD8x3Jqc0AUphjHgkHum7p8sB8OlZBYQFEhUwh2yxV5ZNWe80n+6GtKas6pnUWJv0fPHdGXINWgZrmxYtEtfborLQCh/ulqFqEIndZvFmfTKTQf7BgwMIi4wAYc4eHY4Xy3c1XJsHXoRo0wKBgC1n6KYXTcsfN0q4gP6x7j9+wqaTxk8C3NseVQ1RjAGb+22hyK/gWVzvF1fMQ94xeyfVJ1JykUMvlYX4r1vuTTPLmWP+wtxl9OQ7CuCtLza19Xq3MGt82Ba8aSBe9MsrKoTXTo87sgjrnpOdhyMmV3hNN+19eMdmPGCpClv1b7EfAoGAN9FLRZwJvNcWWo/ZhmS4UMj0C3HiVH3/fKWVf2ETR/wQYklCFJAUhjnE4cMnVGYDt9XCsEjUxGIgdkn2Aybry4Owg5YKmDNsDMTlSzMe5E5FsqXhddbMhcrj8GzFyUw3e3r57mk4dqKhSWWr19CBMMzpYVDYfXQTWlG1DvNDBNUCgYB/9bT2Af9Ns6F//3DuFjUle6GfMc4wjsIUi+332bUUARVy/+xXC/zob8ZCOvNMXFoC/f9QBbq6ZPspzYePnBJDdb9h9QdExOZ13hrWhqpbnZuD9X8eehfv/PcyU5ePNhqXKKXWR8Oi5nnsWTTVDaErxKnqfc17aLMT3hARoZNHnw==ALIPAY_PUBLIC_KEY: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvT74NkqdiScXZ4THvUZp5XMZXPAr2+08I9nNZUNzJWa96zwUafPvKTlzzr1JxRzAjz5BzTv/iIb6nTUSjC63xvixvOqmD8fvlQ8XS2GGCxqv6JJtnzXZyb7DRKT59mFJFus2I3zxA3IMFz6wso5CtQQE/E1VsAOna6pMwdseiTjGd1+OluXFWZGYd9hqBfNzrCQSr9dY8CMl1GEk/pMbErq788u6G5BNgOY6Z7IfPhkMDTjoYyfpgtvf4rVp9eu32JayoxKtoFS0XjKgl32Rxmr2GWN9gupFFAVXT4T0IPwIIzokWU2kIhd2HBRNwvx0ZTX8B7HX7E8wKokED264CQIDAQABserverUrl: https://openapi.alipay.com/gateway.doCertPath: /usr/local/cert/appCertPublicKey_2021002190661261.crtAlipayPublicCertPath: /usr/local/cert/alipayCertPublicKey_RSA2.crtRootCertPath: /usr/local/cert/alipayRootCert.crt
#!/bin/bash# 脚本中只要出现执行不是true的语句,就退出不再往下执行 set -e# 导入环境变量 export jar_PATH=/data/web export APP_PATH=/home/task export DATA_PATH=`date +%Y%m%d` #export CONF_PATH=/home/hnpp.config/task.yml # 判断老的进程是否存在,若存在就杀掉 killjar() {pid=`ps -ef|grep task |grep java |awk '{print $2}'`echo "task Id list :$pid"if [ "$pid" = "" ]thenecho "no task pid alive"elsekill -9 $pidfi }# 调用函数 killjar# 判断老的jar包是否存在,若存在就删除 if [ -f $APP_PATH/task-0.0.1-SNAPSHOT.jar ]; thenrm -rf $APP_PATH/task-0.0.1-SNAPSHOT.jar fi# 更新最新的jar包 if [ -f $jar_PATH/task-0.0.1-SNAPSHOT.jar ]; then mv $jar_PATH/task-0.0.1-SNAPSHOT.jar $APP_PATH fi# 重新启动#nohup java -jar -Dspring.config.location=$CONF_PATH $APP_PATH/task-0.0.1-SNAPSHOT.jar & cd $APP_PATH nohup java -jar task-0.0.1-SNAPSHOT.jar > task.$DATA_PATH.log & # sleep 10秒, 等待java进程完成起来 sleep 5s echo 'Start success!'[root@hnpp-1 user-center]# cat /data/sh/admin.sh #!/bin/bash# 脚本中只要出现执行不是true的语句,就退出不再往下执行 set -e# 导入环境变量 export jar_PATH=/data/web export APP_PATH=/home/admin export DATA_PATH=`date +%Y%m%d` #export CONF_PATH=/home/hnpp.config/admin.yml # 判断老的进程是否存在,若存在就杀掉 killjar() {pid=`ps -ef|grep admin |grep java |awk '{print $2}'`echo "admin Id list :$pid"if [ "$pid" = "" ]thenecho "no admin pid alive"elsekill -9 $pidfi }# 调用函数 killjar# 判断老的jar包是否存在,若存在就删除 [ -f $APP_PATH/admin-1.0.0-SNAPSHOT.jar ] && \ rm -rf $APP_PATH/admin-1.0.0-SNAPSHOT.jar# 更新最新的jar包 if [ -f $jar_PATH/admin-1.0.0-SNAPSHOT.jar ]; thenmv $jar_PATH/admin-1.0.0-SNAPSHOT.jar $APP_PATH fi# 重新启动 #nohup java -jar -Dspring.config.location=$CONF_PATH $APP_PATH/admin-1.0.0-SNAPSHOT.jar & cd $APP_PATH nohup java -jar admin-1.0.0-SNAPSHOT.jar > admin.$DATA_PATH.log &# sleep 10秒, 等待java进程完成起来 sleep 5secho 'Start success!'
JAR包自动启动脚本相关推荐
- linux启动java jar文件_推荐:Linux启动Java程序jar包Shell脚本
#!/bin/sh# 该脚本为Linux下启动java程序的脚本## author: luandy# date: 2021/1/15## 特别注意:# 该脚本使用系统kill命令来强制终止指定的jav ...
- java -jar 停止_推荐:Linux启动Java程序jar包Shell脚本
每次启动Java程序jar包的时候,难道你还在手敲java -jar xxserver.jar--?边敲边想着都需要追加哪些参数? 今天就推荐给大家一个几乎通用的Shell脚本,它支持Java程序Ja ...
- Shell 简单的java微服务jar包 -- 部署脚本
部署描述: 1.jenkins 通过maven编译成jar 项目包 2.shell 脚本从jenkins机器发布到:目标主机 注释:次脚本没有写jar包的备份,有时间加上 脚本内容: #!/bin/b ...
- windows 根据端口杀进程 部署jar包 批处理脚本
@echo off & setlocal EnableDelayedExpansionecho 启动脚本...... echo 关闭进程...... set obj[0]=8082 set p ...
- Windows一键启动jar包bat脚本制作
Windows 系统下: 在开发部署项目过程中,通常会反复的启动jar包项目,有时候要启动多个服务来支撑系统正常运行,为了提高效率,简化重复性任务,制作一键启动脚本.方便开发调试,也简化运维工作量. ...
- linux服务器运行停止Jar包Shell脚本编写
启动脚本: #!/bin/sh #启动脚本,nohup方式表示后台运行jar包 # 参数说明如下 # -Dfile.encoding 设置文件编码方式 # -Xms2000m JVM初始分配的堆内存 ...
- 启动jar包shell脚本
1.创建shell脚本 makir start.sh 2.复制以下内容修改自己jar包的文件名和路径 jar_name=xxx.jar jar_path=/xxx/xxxx log_path=/xxx ...
- python脚本里执行jar包_python脚本简化jar操作命令
本篇和大家分享的是使用python简化对jar包操作命令,封装成简短关键字或词,达到操作简便的目的.最近在回顾和构思shell脚本工具,后面一些文章应该会分享shell内容,希望大家继续关注. 获取磁 ...
- shell运行java去哪加载jar包_shell脚本启动jar包-jar文件怎么打开
1.基于maven的springboot项目打包 2.到项目路径下对应target目录找到生成的jar 将之上传到linux系统上 3.对应shell脚本 ------脚本开始------ #!/bi ...
- springboot项目jar包启动脚本
当工具用习惯了.也就懒的去关心底层的东西了.项目部署的时候,用习惯了jenkins也就不关心运维写的脚本了.但是当工具出问题,那就要从最基础的脚本来部署项目.脚本我也不太懂,在这里只是与大家一起分享启 ...
最新文章
- 如何使用好android的可访问性服务(Accessibility Services)
- 四川师范大学大学计算机基础,四川师范大学2009-2010学年计算机基础期末考试试题.doc...
- QCOW2 — ROW/COW 快照技术原理解析
- Logistic Function == Sigmoid Function
- 要搞清楚对象和对象的引用
- 高年薪的Web前端工程师经常思考哪些问题?
- ClickOnce部署(3):使用证书
- [译] 帮助你成为一名成功的 Web 开发工程师的 21 步
- signed 与 unsigned 有符号和无符号数
- vulcan 编程_如何用Next代替流星— Vulcan Next Starter简介
- SpringCloud与Feign
- Asianux将成为最先进的安全Linux操作系统
- 大数据如何影响企业的决策
- SpringBoot依赖管理,版本仲裁
- java练习题库_大一java题库练习题.doc
- JAVA 基础练习题
- html看图识颜色,canvas 识别图片颜色 解析图片颜色
- 将文件复制到临时文件夹
- 关于Tomcat在启动时的socket bind failed 730048 错误
- 事务是什么?干什么用?
热门文章
- 《Mars说光场》系列文章整理
- matlab制作数字滤波器(带通滤波器)
- 最大功率点跟踪测试软件,最大功率点跟踪(MPPT)
- 提升效率之串口监控工具
- 数学建模中的规划问题
- c语言习题 编写自定义函数 volume_c,功能是求正方体的体积(要求:正方体的的边长 a 在主函数中做输入,在主函数中调用函数 volume_c,在主函数中输出正方体体积,a 为int 型变量)。
- 用gambit学博弈论--完全信息动态博弈(一)
- Android小游戏——简单易懂单机人人对战五子棋源码详解
- 第10周项目1 二叉树算法库
- 蓝桥杯 C语言 试题 算法训练 猴子分苹果