bat批处理启动java程序通用脚本

前提:

  • 脚本假设需要给脚本传递两个参数,参数最终传给java程序
  • 脚本同级目录中classes内存放的是程序运行的classes文件
  • 脚本同级目录中lib内存放的是程序运行的jar包
  • 非最佳脚本,根据需求自行修改

启动脚本:

  1. 不需要传递参数直接双击打开或者命令行输入脚本名称运行即可
  2. 此脚本假设和需要传递两个参数,需要在命令上输入
    	路径\脚本名称 参数一 参数二
    

脚本内容:

::	
::Author:wangxueming	
::Date:2018-09-27
::	
:: "::" annotation
:: "@echo off" only show results, no command line is displayed
:: "echo off" only show results, no command line is displayed, but this command line is included
@echo off
title Program
:: start delayed expansion to use variable nesting eg. ! %%! and Loop assignment
setlocal enabledelayedexpansion
cls

:: 获取参数,此脚本假设有两个参数
set arg1=%1%
set arg2=%2%

::统计参数个数
set /a cnt=0
:loop
if not "%1"=="" (set /a cnt+=1&shift /1&goto :loop)

if %cnt% NEQ 2 (
	echo Usage:need two args. 
	goto exit
)

::JAVA_HOME目录
::set JAVA_HOME=/usr/java/jdk1.7.0_79

::Java应用根目录
set APP_HOME=%cd%

::需要启动的Java类
set APP_MAINCLASS=com.dcits.startup.Bootstrap

::classpath参数,包括指定lib目录下所有的jar
set CLASSPATH=%APP_HOME%\classes

For /r "%APP_HOME%\lib" %%f in (*.jar) do (
	set CLASSPATH=!CLASSPATH!;%%f
)

::java虚拟机启动参数, MaxPermSize=128m; support was removed in 8.0
set JAVA_OPTS=-Xms512m -Xmx512m -Xmn256m -Djava.awt.headless=true -XX:MaxPermSize=128m

::打印环境信息
echo System Information:
echo ********************************************************
echo COMPUTERNAME=%COMPUTERNAME%
echo OS=%OS%
echo.
echo APP_HOME=%APP_HOME%
echo JAVA_HOME=%JAVA_HOME%
echo APP_MAINCLASS=%APP_MAINCLASS%
echo CLASSPATH=%CLASSPATH%
echo CURRENT_DATE=%date% %time%:~0,8%
echo ********************************************************

::执行java
echo Starting %APP_MAINCLASS% ...
echo.
"%JAVA_HOME%\bin\java" -classpath %CLASSPATH% %JAVA_OPTS% %APP_MAINCLASS% %arg1% %arg2%

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值