这是我一个真实的项目。发布批处理程序,结构目录如下:
data文件存放数据,etc存放配置文件,lib,存放项目jar包,startup.bat/startup.sh启动脚本。
1、-----windows上.bat文件调用java程序。bat文件内容如下------
echo off
rem setup classpath
echo set _CP=%%_CP%%;%%1> cp.bat
set _CP=.;\classes;"%JAVA_HOME%\lib\dt.jar";"%JAVA_HOME%\lib\tools.jar"
for %%i in (lib\*.jar) do call cp.bat %%i
set CLASSPATH=%_CP%
del cp.bat
echo %CLASSPATH%
rem set JAVA_HOME=
set JAVA_OPTION=-Dfile.encoding=GBK -Xms256m -Xmx256m -XX:MaxPermSize=64m
set RUN_CLASS=batch.Main
"%JAVA_HOME%\bin\java" %JAVA_OPTION% -classpath %CLASSPATH% %RUN_CLASS%
2、-------unix/linux上shell调用java程序,shello文件内容如下---------
if [ -z ${JAVA_HOME} ]
then
echo "JAVA_HOME not set yet,can't run java program!"
exit -1
fi
CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar
JLIBDIR=./lib
export JLIBDIR
for LL in `ls ${JLIBDIR}/*.jar`
do
CLASSPATH=${CLASSPATH}:${LL}
done
echo ${CLASSPATH}
export CLASSPATH
JAVA_OPTION="-Dfile.encoding=GBK -Xms256m -Xmx256m -XX:MaxPermSize=64m"
RUN_CLASS=batch.Main
${JAVA_HOME}/bin/java ${JAVA_OPTION} -classpath ${CLASSPATH} ${RUN_CLASS}