linux下执行java程序的sh脚本分享

时间:2022-01-02 18:33:59

今天大概耗费了快一天的时间研究怎么用脚本执行java程序,终于实现了,分享一下

(1)在linux下写一个.sh文件

(2)文件内容如下:

 

复制代码代码如下:

#!/bin/sh         //bash文件头
APP_HOME=/home/blmcrm/crm/A      //要执行的java文件中bin文件的上一个目录,我的目录是/home/blmcrm/crm/A/bin/blm......(后面不写了),总之就是写bin目录前面的部分,因为jar包在bin目录里面,如果不在bin里面,也如此改一下就行
CLASSPATH=$APP_HOME/bin           //bin目录当然是包含jar包的目录啦
for i in "$APP_HOME"/bin/*.jar    //引进所有的jar包,这里用的循环,当然也可以按照这个格式一个一个                                     写
do 
 CLASSPATH="$CLASSPATH":"$i"       //环境变量就这格式
done
export CLASSPATH=.:$CLASSPATH        //不写这个可能会说找不到main类
echo ${CLASSPATH}                    //打印环境变量,可以不写
java -Xms50m -Xmx250m org.gdh.blm.exec.Syslog_csv 
exit(结束)     //执行java程序, 其中-Xms50m -Xmx250m是运行内存什么的设置,后面的是bin目录以后一直到.class的路径,我的是Syslog_csv.class,所以我最后那个是Syslog_csv。


不知道写的详不详细,每个人情况不一样,仅供参考,但是设置的时候环境变量是最重要的,我就是环境变量一直不对,总是按网上查到的来,不明白怎么回事,才一直出错,其实环境变量就是你要执行的java程序所在的位置,对了,.sh的执行是在终端输入sh aa.sh