Gab*_*mas 3 java windows-services
我一直在阅读文档,但我无法启动和停止服务.
我的.ini文件是:
main.class=test.TestService
service.class=test.TestService
service.id=StreamServer
service.name=StreamServer
service.description=Servidor que proporciona una comunicación con streams.
service.controls=stop
classpath.1=*.jar
Run Code Online (Sandbox Code Playgroud)
TestService类是:
package test;
public class TestService{
private static TestServer server;
public static void main (String[] args){
if (args.length == 1){
if (args[0].equals ("start")){
if (server == null){
server = new TestServer (5000);
server.start ();
}
}else if (args[0].equals ("stop")){
if (server != null){
server.stop ();
server = null;
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我必须修改这个类,但我不知道如何.
谢谢.
从winrun4j网站的首页看一下示例服务:
package org.boris.winrun4j.test;
import org.boris.winrun4j.AbstractService;
import org.boris.winrun4j.EventLog;
import org.boris.winrun4j.ServiceException;
/**
* A basic service.
*/
public class ServiceTest extends AbstractService
{
public int serviceMain(String[] args) throws ServiceException {
int count = 0;
while (!shutdown) {
try {
Thread.sleep(6000);
} catch (InterruptedException e) {
}
if (++count % 10 == 0)
EventLog.report("WinRun4J Test Service", EventLog.INFORMATION, "Ping");
}
return 0;
}
}
Run Code Online (Sandbox Code Playgroud)
启动服务时将调用serviceMain方法.在服务准备好关闭之前,您不应该从此方法返回.还要检查"shutdown"标志 - 当您在服务控制面板中单击"停止"(或需要停止服务时)时,此标志将设置为true.
| 归档时间: |
|
| 查看次数: |
6356 次 |
| 最近记录: |