启动jar包做成.bat或者.sh

一、Windows

@title biz-server

@REM *************************************************************************
@REM This script is used to start biz-server.
@REM
@REM System will load all jar-packages in 'lib' directory
@REM *************************************************************************

@set JAVA_VM=-XX:PermSize=64M -XX:MaxNewSize=2048m -XX:MaxPermSize=2048m -Djava.awt.headless=true -Xmx2048m -Xms2048m
@set JAVA_OPTIONS=
@set DEPLOY_PATH=%cd%

java -jar stock-apply.jar
@pause

如果要指定配置文件启动,可以使用以下脚本--spring.config.location=resources/application.properties

@title DATA_HUB
set "CURRENT_DIR=%~dp0"
cd %CURRENT_DIR%\
%CURRENT_DIR%jre1.8\bin\java -jar server.jar --spring.config.location=resources/application.properties
@pause

案例1

@echo off

set curdir=%cd%

cd %curdir%\monitor\zookeeper-3.4.9\bin\
start zkServer.cmd
echo "zkServer.cmd"

choice /t 15 /d y /n >nul
cd %curdir%\monitor\elasticsearch-6.5.1\bin\
start elasticsearch.bat
echo "elasticsearch.bat"

choice /t 15 /d y /n >nul
cd %curdir%\monitor\kafka_2.11-2.0.0\
start run0.bat
echo "run0.bat"

choice /t 15 /d y /n >nul
cd %curdir%\monitor\logstash-6.0.1\
start start.bat
echo "start.bat"

choice /t 15 /d y /n >nul
cd %curdir%\web\
start start.exe
echo "start.exe"

choice /t 15 /d y /n >nul
cd %curdir%\nodeapp\
start run.bat
echo "run.bat"

choice /t 15 /d y /n >nul
cd %curdir%\singleportal\bin\
start start.bat
echo "start.bat"

choice /t 15 /d y /n >nul
cd %curdir%\vectortile\
start start64.bat
echo "start64.bat"

choice /t 15 /d y /n >nul
cd %curdir%\server\bin\
start startup.bat
echo "startup.bat"

echo 按任意键退出 & pause
exit

案例二

@echo off

::启动nginx
set curdir=%cd%
cd %curdir%\web\
start nginx -c conf/nginx.conf
echo "web start success!"

::启动api
cd %curdir%\system\
choice /t 5 /d y /n >nul
%curdir%\jdk\bin\java -Dfile.encoding=utf-8 -jar system.jar --spring.config.location=application.yml
echo "system start success"

案例三
1、windows系统下,将mysql、pg、mongo、tomcat设置为服务,且不用安装直接使用
tomcat窗口隐身包可直接下载:免安装包

@echo off
title  自动安装部署
echo ==========================================================
echo             安装注意事项
echo.
echo 第一.请以鼠标右键-》[以管理员身份运行]打开该文件。 
echo. 
echo 第二.防火墙和杀毒软件拦截时,请选择允许!!!
echo ==========================================================

color 0a
set curdir=%cd%

echo mysql开始安装
choice /t 3 /d y /n >nul
cd %curdir%\database\mysql\bin\
mysqld --install SKDSJPT_mysql --defaults-file="%curdir%\database\mysql\my.ini"
sc config SKDSJPT_mysql start= auto
NET Start SKDSJPT_mysql
echo ==========================mysql安装完成================================

echo mongodb开始安装
choice /t 10 /d y /n >nul
cd %curdir%\database\mongodb\bin\
mongod -port 27017 --dbpath "%curdir%\database\mongodb\data" --logpath "%curdir%\database\mongodb\log\mongodb.log" --bind_ip "0.0.0.0" --install --serviceName SKDSJPT_mongodb
sc config SKDSJPT_mongodb start= auto
net start SKDSJPT_mongodb
echo ===========================mongodb安装完成===============================

echo postgresql开始安装
choice /t 10 /d y /n >nul
cd %curdir%\database\postgresql\bin\
pg_ctl register -N SKDSJPT_postgresql -D "%curdir%\database\postgresql\data"
sc config SKDSJPT_postgresql start= auto
net start SKDSJPT_postgresql
echo ===========================postgresql安装完成===============================

echo tomcat开始安装
set SER_HOME=%~dp0
set JAVA_HOME=%SER_HOME%/jdk
set JRE_HOME=%JAVA_HOME%/jre
set GDAL_HOME=%SER_HOME%/gdal
set GDAL_DATA=%GDAL_HOME%/share/gdal
set LD_LIBRARY_PATH=%SER_HOME%/jdk/lib:%GDAL_HOME%/lib
set CATALINA_HOME=%curdir%\online_controller\
choice /t 10 /d y /n >nul
cd %curdir%\online_controller\bin\
service install SKDSJPT_tomcat
echo ===========================tomcat安装完成===============================
echo 启动成功,请通过:http://服务器真实IP:8857/success

Pause

案例四

@title DataHub

@REM *************************************************************************
@REM This script is used to start datahub.
@REM
@REM System will load all jar-packages in 'lib' directory
@REM *************************************************************************

SET "DP_HOME=%~dp0"
SET SDK_ROOT=%DP_HOME%SDK\
SET SDK_ROOT=%SDK_ROOT:\\=\%
SET "JAVA_VM=-XX:PermSize=64M -XX:MaxNewSize=2048m -XX:MaxPermSize=2048m -Djava.awt.headless=true -Xmx2048m -Xms2048m"

SET "PATH=%SDK_ROOT%bin;%SDK_ROOT%bin\gdal\python\osgeo;%SDK_ROOT%bin\proj6\apps;%SDK_ROOT%bin\gdal\apps;%SDK_ROOT%bin\ms\apps;%SDK_ROOT%bin\gdal\csharp;%SDK_ROOT%bin\ms\csharp;%SDK_ROOT%bin\curl;%PATH%"
SET "GDAL_HOME=%SDK_ROOT%bin\gdal"
SET "GDAL_DATA=%SDK_ROOT%bin\gdal-data"
SET "GDAL_DRIVER_PATH=%SDK_ROOT%bin\gdal\plugins"
SET "PYTHONPATH=%SDK_ROOT%bin\gdal\python;%SDK_ROOT%bin\ms\python"
SET "PROJ_LIB=%SDK_ROOT%bin\proj7\SHARE"

%JAVA_HOME%bin\java -jar -Djava.library.path=%GDAL_HOME%\java %DP_HOME%dms-datahub.jar --spring.config.location=%DP_HOME%resources\application.properties
@pause

案例五

SET "SER_HOME=%~dp0"
SET "JAVA_HOME=%SER_HOME%jdk\"
cd "%SER_HOME%online_datahub\"
del /a /f /s /q logs\*

start /d "%SER_HOME%online_datahub\" nginx.exe
start cmd /c "title nginx-manager && %SER_HOME%online_datahub\nginx-manager.bat
start /d "%SER_HOME%online_datahub\" minio.exe server "html\ware"

cd "%SER_HOME%system_plugins\elasticsearch"
del /a /f /s /q logs\*
start cmd /c "title elasticsearch && %SER_HOME%system_plugins\elasticsearch\bin\elasticsearch.bat"

choice /t 10 /d y /n >nul
echo LOGSTASH
cd "%SER_HOME%system_plugins"
start /d "%SER_HOME%system_plugins\metricbeat\" metricbeat.exe -e
start cmd /c "title LOGSTASH && %SER_HOME%online_datahub\bin\logstash.bat -f %SER_HOME%online_datahub\config\logstash-sample.conf"

choice /t 10 /d y /n >nul
echo SERVER_CONTROLLER
cd %SER_HOME%server_controller
del /a /f /s /q logs\*
del /a /f /s /q temp\*
del /a /f /s /q work\*
start cmd /c "title SERVER_CONTROLLER && %SER_HOME%server_controller\bin\catalina.bat run"

choice /t 10 /d y /n >nul
echo SERVER_MANAGER
SET "SERVICE_ENGINE=%SER_HOME%service_engine\"
cd "%SERVICE_ENGINE%"
del /a /f /s /q mapserver\log\*
del /a /f /s /q rasterserver\log\*
::启动zk
choice /t 5 /d y /n >nul
start cmd /c "title zkServer && %SERVICE_ENGINE%zookeeper\bin\zkServer.cmd"
::启动rasterserver
choice /t 10 /d y /n >nul
start /d "%SERVICE_ENGINE%rasterserver\" rasterserver.exe
::启动server_manager
choice /t 5 /d y /n >nul
start cmd /c "title server_manager && java -Djava.ext.dirs=lib  -jar %SERVICE_ENGINE%server_manager\pub-server.jar --spring.config.location=%SERVICE_ENGINE%server_manager\config\application-prod.yml"

choice /t 10 /d y /n >nul

echo ONLINE_SCENCE
start cmd /c "title ONLINE_SCENCE && %SER_HOME%online_scence\run.bat"

echo ONLINE_DRAWING
cd "%SER_HOME%online_drawing\screenshot\"
start cmd /k  "node %SER_HOME%online_drawing\screenshot\App.js"
start cmd /c "title ONLINE_DRAWING && %SER_HOME%online_drawing\bin\start.bat"

echo DATAHUB
start cmd /c "title DATAHUB && %SER_HOME%online_datahub\server.bat"

::启动mapserver
choice /t 10 /d y /n >nul
start /d "%SERVICE_ENGINE%mapserver\" mapserver.exe
Pause

二、linux:

案例一:jar启动脚本

SER_HOME=$(pwd)
cd $SER_HOME
nohup java -Djava.ext.dirs=./lib -jar service-manager.jar --spring.config.location=config/application-prod.yml > _out.log 2>&1 &

补充:启动报错问题记录
1、Linux下执行Shell命令sh ./run.sh &出现$‘\r‘: command not found解决方法
解决办法:
1、vi run.sh //进入你写的脚本
2、i进入插入编辑模式
3、按esc,在最尾部输入 :set ff=unix //将换行符设置成UNIX的模式
4、:wq //存储并退出
5、再次启动脚本


SER_HOME=$(pwd)

off() {
	stop
	sleep 10
docker stop nginx
docker stop mongo
docker stop postgres
}

on() {
	sleep 10
systemctl daemon-reload
systemctl restart docker.service
	sleep 10
docker start postgres
	sleep 10
docker start mongo
	sleep 10
docker start nginx
	sleep 10
docker start elasticsearch
#	sleep 10
#docker start minio
#	sleep 10
#docker start logstash
#	sleep 10
#docker start metricbeat
#	sleep 10
#docker start mysql
#	sleep 10
#docker start tomcat
}

start() {
	cd ${SER_HOME}
	nohup sh controller.sh > /dev/null 2>&1 &

	#sleep 15
	#cd ${SER_HOME}/service_engine_vector
	#nohup sh run.sh > /dev/null 2>&1 &
	
	#sleep 10
	#cd ${SER_HOME}/service_manage/bin
	#nohup ./startup.sh &
}

stop() {
	cd $SER_HOME

	datahubport=8300
	#根据端口号查询对应的datahubpid
	datahubpid=$(netstat -ntlp | grep :$datahubport | awk '{print $7}' | awk -F"/" '{ print $1 }');

	#杀掉对应的进程,如果datahubpid不存在,则不执行
	if [  -n  "$datahubpid"  ];  then
	    echo -e "stop $datahubport : $datahubpid"
	    kill  -9  $datahubpid;
	else
	    echo "$datahubport is not running"
	fi

	sleep 5
	netstat -ntlp
	rm -rf $SER_HOME/target
}

clean() {
    stop
	rm -rf $SER_HOME.tar.gz

	rm -rf $SER_HOME/data/elasticsearch/data

	rm -rf $SER_HOME/modules/springboot/resources
	rm -rf $SER_HOME/modules/springboot/biz-server.jar
}

init() {
	stop
	rm -rf $SER_HOME/logs

	rm -rf $SER_HOME.tar.gz

	rm -rf $SER_HOME/data/elasticsearch/data
	rm -rf $SER_HOME/data/elasticsearch/logs
	rm -rf $SER_HOME/data/elasticsearch/bin/nohup.out
	rm -rf $SER_HOME/data/neo4j-community-3.5.12/logs

	rm -rf $SER_HOME/plugins/logstash-7.4.0/logs
	rm -rf $SER_HOME/plugins/node-v6.11.2-linux-x64/bin/nohup.out

	rm -rf $SER_HOME/modules/springboot/webapps/upload

	sleep 3
	cd /home/ktw/software
	tar zcvf $BIZ_VERSION.tar.gz $BIZ_VERSION
}

rh_status() {
    stop
    start
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}


case "$1" in
    start)
        $1
        ;;
    stop)
        $1
        ;;
    off)
        $1
        ;;
    clean)
        $1
        ;;
    init)
        $1
        ;;
    on)
        $1
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
        restart
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|off|condrestart|try-restart|clean|init|on}"
        exit 2
esac
exit $?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值