linux shell脚本如何启动一个java进程

linux shell脚本如何启动一个java进程,第1张

在shell脚本中直接执行java就行了,比如写个ash文件

#!/bin/bash

java aclass

就行了,然后保存,执行bash ash脚本。如果要后台运行,则bash ash&

同时加载编译多个jar包和java文件

在个人平常使用或者当我们把代码部署到linux服务器上的时候,我们经常需要通过命令行编译和运行java文件,网上关于这个的方法大多是通过

javac -cp filePath/jarNamejar javaNamejava1

这种方法。但是加入在filepath文件夹下面有好几个jar包,在src文件夹中有好几个java文件的时候,这个方法就很笨拙了,我在网上看的资料非常乱,其实下面一个非常简单的指令就可以解决了:

javac -Djavaextdirs=filePath java//注意这里只需要指定到jar包所在的文件夹就可以了1

其中java表示可以一次编译所有的java文件。

把编译文件放到指定目录

如果想要把编译后的文件放到指定目录,只需要在java文件后加上 -d outputFilePath就可以了,例如下面:

javac -Djavaextdirs=filePath java -d outputFilePath1

执行java文件

执行java程序页是同样,只需要把javac换成java,后面写上主函数所在的java文件的名称就可以了,不用加后缀。例如下面

javac -Djavaextdirs=filePath MainJavaName1

如果想要把编译后的文件放到指定目录,只需要在java文件后加上 -d outputFilePath就可以了

你得明白,启动远程的服务,首先得连接到服务器上去。

下面有两种方法:1、通过自定义程序;

2、使用现成的telnet或ssh(推荐)

方法1、首先得看linux服务器的限制,如果服务器允许自定义的登录,

并且你在服务器上运行了一个监听某端口(如1234)的程序,

写一个client端,用socket连接上去,就可以执行了。

方法2、如果服务器支持ssh或者telnet登录,且

允许远程执行脚本的话,可以直接登录进去(当然这算是

使用现成的程序吧,ssh更安全,不过或许不是你想要的。)

有现成的ssh服务,直接使用就是了,自己写的肯定没这个安全~~

要用java的话,应该也有现成的ssh客户端---

你是要单次运行还是不挂断在后台运行?单次直接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

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux shell脚本如何启动一个java进程

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情