您的位置:首页 > 编程语言 > Java开发

Windows下的java启动脚本

2013-04-16 13:56 232 查看
最近部分项目的子系统由linux转向windows,根据实际情况的需求结合网络资源整理了一份Bat脚本,用于在Windows下启动java app。

脚本:

@echo off
REM Project name: Windows下的java启动脚本
REM Author:       Jason
REM Date:         2013-4-16
REM Version:      1.0

IF "%CLASSPATH%" EQU "" (
echo CLASSPATH PARARMS IS NULL
pause
goto END
)

REM 叠加classpath method
IF "%1"=="##" goto ENVSET

REM 库文件所在的目录,相对于当前路径
SET LIBDIR=libs

REM 设定CLSPATH 变量,并初始化为系统的classpath
SET CLSPATH=%CLASSPATH%

REM 读取指定Libs目录下的*.jar,并执行ENVSET函数进行classpath叠加
FOR %%c IN (%LIBDIR%\*.jar) DO CALL %0 ## %%c

REM 从app.pro 资源文件中读取启动脚本所需的信息,如:title、app launcher、jvm params...
REM app.pro是N个键值对,重复的键将被最后一个替换,不会叠加
FOR /F "tokens=1,2 delims==" %%A IN (.\app.properties) DO set %%A=%%B

title %app.title%

REM 指定logback配置文件所在位置
REM 废弃
REM set LogArgs=-Dlogback.configurationFile=conf/logback.xml

REM 要启动的类名
SET CLSNAME=%app.launcher%

REM JVM参数设定
IF "%app.xmx%" NEQ "" (
set App.xmx=%app.xmx%
) else (
set App.xmx=-Xmx256M
)

IF "%app.xms%" NEQ "" (
set App.xms=%app.xms%
) else (
set App.xms=-Xms256M
)

IF "%app.xmn%" NEQ "" (
set App.xmn=%app.xmn%
) else (
set App.xmn=-Xmn30M
)

IF "%app.xss%" NEQ "" (
set App.xss=%app.xss%
) else (
set App.xss=-Xss256K
)
set MemoryArgs=%App.xmx% %App.xms% %App.xmn% %App.xss%

REM 运行app
GOTO RUN

:RUN
echo %CLSPATH%
java -cp %CLSPATH% %MemoryArgs% %CLSNAME%
goto END

:ENVSET
set CLSPATH=%CLSPATH%;%2
goto END

:END
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: