linux下执行java程序的sh脚本分享
更新时间:2014年09月25日 11:01:51 投稿:hebedich
这篇文章主要介绍了linux下执行java程序的sh脚本,仅供参考,但是设置的时候环境变量是最重要的,我就是环境变量一直不对,总是按网上查到的来,不明白怎么回事,才一直出错,其实环境变量就是你要执行的java程序所在的位置
今天大概耗费了快一天的时间研究怎么用脚本执行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
相关文章
Java面试岗常见问题之ArrayList和LinkedList的区别
ArrayList和LinkedList作为我们Java中最常使用的集合类,很多人在被问到他们的区别时,憋了半天仅仅冒出一句:一个是数组一个是链表。这样回答简直让面试官吐血。为了让兄弟们打好基础,我们通过实际的使用测试,好好说一下ArrayList和LinkedList的区别这道经典的面试题2022-01-01Spring系统属性及spring.properties配置文件示例详解
spring中有一个SpringProperties类,来保存spring的系统属性,本文结合实例代码对Spring系统属性及spring.properties配置文件相关知识给大家介绍的非常详细,需要的朋友参考下吧2023-07-07
最新评论