你是要单次运行还是不挂断在后台运行?单次直接java -jar xxxjar 就可以了,不挂断的话,可以编写一个shell脚本,startsh 内容如下
#!/bin/sh
nohup java -jar -XX:PermSize=64m -XX:MaxPermSize=128m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:SurvivorRatio=8 xxxjar>/dev/null 2>&1 &
具体的参数你自己把握,然后保存,给这个脚本赋于可执行权限,chmod +x startsh
然后执行这个脚本,sh startsh ,然后查看一下java进程,看这个服务起来没有,jps
全贴回来,会太长,不让提交。
总述 :MONITOR 冒号开头的是标签,可以用GOTO跳转到。语句后面不需要加;
REM 这个是枚举jsllib等几个变量对应里面的jar路径添加到CLASSPATH
FOR %%F IN (%JSLLIB%\jar,%JUSERLIB%,%JUSERLIB%\jar) DO call :addcp %%F
goto SEL;
REM 这里是接收命令行输入,然后执行相应 的命令
SET /p sel=请选择:
REM 如果是空命令,则给默认的命令
SET SLCMD=-help
REM if 这一堆,就是判断前面的输入,然后执行设置命令、跳转到RUN
REM 执行完毕了,如果之前的命令选择是4,跳转到MONITOR
if /i "%sel%" == "4" goto MONITOR;
REM 原来MONITOR是又让用户进行输入、选择
SET /p var=是否继续(y或n)?
在java程序中如何调用linux的命令?如何调用shell脚本呢?这里不得不提到java的process类了。process这个类是一个抽象类,封装了一个进程(你在调用linux的命令或者shell脚本就是为了执行一个在linux下执行的程序,所以应该使用process类)。process类提供了执行从进程输入,执行输出到进程,等待进程完成,检查进程的推出状态,以及shut down掉进程。至于详细的process类的介绍放在以后介绍。另外还要注意一个类:Runtime类,Runtime类是一个与JVM运行时环境有关的类,这个类是Singleton的。这里用到的RuntimegetRuntime()方法是取得当前JVM的运行环境,也是java中唯一可以得到运行环境的方法。(另外,Runtime的大部分方法都是实例方法,也就是说每次运行调用的时候都需要调用到getRuntime方法)下面说说Runtime的exec()方法,这里要注意的有一点,就是public Process exec(String [] cmdArray, String [] envp);这个方法中cmdArray是一个执行的命令和参数的字符串数组,数组的第一个元素是要执行的命令往后依次都是命令的参数,envp感觉应该和C中的execve中的环境变量是一样的,envp中使用的是name=value的方式。下面说一下,如何使用process来调用shell脚本例如,我需要在linux下实行linux命令:sh testsh,下面就是执行testsh命令的方法:这个var参数就是日期这个201102包的名字。
如果未设置JAVA_HOME环境变量,需要手动指定
#JDK所在路径
JAVA_HOME=/root/JDK/jdk160_24
RUNNING_USER、APP_HOME、APP_MAINCLASS、CLASSPATH根据自己项目的情况修改即可。
如果在windows下编辑上传到linux,注意用dos2unix命令转换文件格式,不然会报错。
以上就是关于谁会写在linux服务器上运行java程序的运行脚本全部的内容,包括:谁会写在linux服务器上运行java程序的运行脚本、帮忙分析一下下面的启动java项目的bat脚本,每行是什么意思,原理等。、在windows系统中开发的java程序要调用linux下的shell脚本怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)