把java程序注册成windows服务

先去下载一个JavaService-2.0.10.zip
然后解压
有很多文件
这里只需要JavaService.exe这个文件即可
让我们开始吧
自己先写个java程序测试一下
package com.fruitking.test;

import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
if(args!=null){
for(String str:args){
System.out.println("参数->"+str);
}
}
while(true){
Calendar cal = Calendar.getInstance();
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(cal.getTime()));
try{
File file = new File("F:/temp2/"+new SimpleDateFormat("yyyyMMddHHmmss").format(cal.getTime())+".txt");
FileOutputStream out = new FileOutputStream(file);
Thread.sleep(10000);
}catch(Exception e){
e.printStackTrace();
}
}
}

}

导出一个jar包  ftest.jar

然后cmd到JavaService-2.0.10.zip这个主目录
使用:
JavaService -install fruitkingtestTime E:\jdk1.5\jre\bin\server\jvm.dll -Djava.class.path="%CD%"\ftest.jar;"%CD%"\log4j.jar;F:\jservice\spring.jar -start com.fruitking.test.Test -out "%CD%"\stdout.log -err "%CD%"\stderr.log -current "%CD%" -description "fruitking程序,java在windows上自动启动服务程序"

说明一下:
//安装这个服务 你的windows服务名称 你的jdk的虚拟机路径
JavaService -install fruitkingtestTime E:\jdk1.5\jre\bin\server\jvm.dll
//加载你需要的所有jar包,多个用分号隔开
//注意使用绝对路径时不能有特殊符号,比如空格等字符;
//还有使用JAVA_HOME这样的相对路径的时候需要用双引号比如"%JAVA_HOME%"\jre\bin\server\jvm.dll
-Djava.class.path="%CD%"\ftest.jar;"%CD%"\log4j.jar;F:\jservice\spring.jar
//添加启动类 输出参数
-start com.fruitking.test.Test
//输出重定向 错误信息重定向
-out "%CD%"\stdout.log -err "%CD%"\stderr.log
//工作目录 服务描述信息
-current "%CD%" -description "fruitking程序,java在windows上自动启动服务程序"

//卸载这个服务
JavaService -uninstall fruitkingtestTime

这样就可以了
在windows服务里面找就有了  手动启动一下就可以了

你可能感兴趣的:(java,spring,jvm,windows,log4j)