在java中如何控制另外一个程序的启动和停止? 现在的情况是:我有一个用java写的服务程序service.jar(放在e:\Service下),我想写一个服务守护程序,这个守护程序能够完成启动和停止service.jar这个服务,不知道有没有什么办法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上提到的使用Runtime的exec方法我已经试过了,倒是能够启动,但是却有一个关键问题出现了,希望大家能够讨论下。service.jar本身是一个服务程序,启动时为DOS窗口,当有用户使用这个服务的时候会在DOS窗口中输出些信息,譬如:当前使用用户为:张三 等。我使用一个类测试这个exec方法,这个类为:dostest.java,它的main方法里面有一句exec(“java -jar service.jar”);我首先要打开一个DOS窗口,然后输入:java dostest结果运行之后界面为:-------------------------------e:\Service>java dosteste:\Service>java -jar service.jar-------------------------------注意这里“-”表示光标停在这里,没有动作当我使用一个用户连接这个service.jar的时候,在DOS窗口中并没有相应的“当前使用用户为:XX”的信息,请问如何才能获得这些信息? 哪位高手帮忙指点一下?先谢过了~!我只是想获得由exec("java -jar service.jar")方法执行的DOS命令:java -jar service.jar所启动的那个进程的屏幕输出而已........... Process process = Runtime.getRuntime().exec("java -jar service.jar");InputStream in = process.getInputStream(); 笨方法的自动关闭service.jar里面增加一个线程类,把运行的线程类都引用进来,然后每隔一段时间就去new一个date,发现时间到了就把所有的注册进来的线程都关闭,哈哈 你在你的test里面用反射启动services,要退出就关闭test即可。 figoren(figoren)的方法已经使用过了,还是没有输出wxg1008(嘻嘻哈哈) 好像误会了我的意思,我不是想自动关闭,而是想关闭它的时候就关闭它,而且关闭问题我已经解决,现在的问题是如何获得启动的service.jar的输出qjyh(牵机引幻) 的方法是什么意思?什么叫反射启动?能否详细说明,谢谢~~ 1.启动Runtime.getRuntime().exec,然后守护进程和运行进程建立socket通讯,运行进程收到守护进程的消息再关闭自身。2.另外我记得Runtime.getRuntime().exec可以得到调用进程的进程号,如果调用kill命令是不是也可以关闭那个java进程? 请教调用webservice接口出现的问题 servlet 读取java文件报错信息 小弟新手,问一个有关JDBC的和反射的问题 关于抽象类与接口理解及其它问题 请大大们帮忙,JAVA中鼠标问题,谢谢 cookie实现记录用户最近浏览过的10件帖子 写了一个获得随机数的类,大家看看! 急!关于jsp页面显示数据的一个问题 怎么样让一幅图片添满整个JLabel?? 有只用forte 2.0的高手吗?请指教 新手上路:问个弱弱的问题,JAVA适合做3D网络游戏开发吗? JTable 中阻止修改数据的方法?
service.jar本身是一个服务程序,启动时为DOS窗口,当有用户使用这个服务的时候会在DOS窗口中输出些信息,譬如:当前使用用户为:张三 等。我使用一个类测试这个exec方法,这个类为:dostest.java,它的main方法里面有一句exec(“java -jar service.jar”);
我首先要打开一个DOS窗口,然后输入:java dostest
结果运行之后界面为:
-------------------------------
e:\Service>java dosteste:\Service>java -jar service.jar
-
------------------------------
注意这里“-”表示光标停在这里,没有动作
当我使用一个用户连接这个service.jar的时候,在DOS窗口中并没有相应的“当前使用用户为:XX”的信息,请问如何才能获得这些信息?
我只是想获得由exec("java -jar service.jar")方法执行的DOS命令:java -jar service.jar所启动的那个进程的屏幕输出而已...........
InputStream in = process.getInputStream();
service.jar里面增加一个线程类,把运行的线程类都引用进来,然后每隔一段时间就去new一个date,发现时间到了就把所有的注册进来的线程都关闭,哈哈
wxg1008(嘻嘻哈哈) 好像误会了我的意思,我不是想自动关闭,而是想关闭它的时候就关闭它,而且关闭问题我已经解决,现在的问题是如何获得启动的service.jar的输出qjyh(牵机引幻) 的方法是什么意思?什么叫反射启动?能否详细说明,谢谢~~