Si utiliza Gradle Build Tool, puede probar mi complemento de servicio de Windows , que facilita el uso de Apache Commons Daemon Procrun .
Para crear una aplicación de servicio de Windows Java con el complemento, debe seguir varios pasos simples.
Cree una clase de servicio principal con el método apropiado.
public class MyService {
public static void main(String[] args) {
String command = "start";
if (args.length > 0) {
command = args[0];
}
if ("start".equals(command)) {
// process service start function
} else {
// process service stop function
}
}
}
Incluya el complemento en su build.gradle
archivo.
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "gradle.plugin.com.github.alexeylisyutenko:windows-service-plugin:1.1.0"
}
}
apply plugin: "com.github.alexeylisyutenko.windows-service-plugin"
El mismo fragmento de script para el nuevo mecanismo de plugin incubación introducido en Gradle 2.1:
plugins {
id "com.github.alexeylisyutenko.windows-service-plugin" version "1.1.0"
}
Configura el complemento.
windowsService {
architecture = 'amd64'
displayName = 'TestService'
description = 'Service generated with using gradle plugin'
startClass = 'MyService'
startMethod = 'main'
startParams = 'start'
stopClass = 'MyService'
stopMethod = 'main'
stopParams = 'stop'
startup = 'auto'
}
Ejecute la tarea gradle createWindowsService para crear una distribución de servicios de Windows.
Eso es todo lo que necesita hacer para crear un servicio simple de Windows. El complemento descargará automáticamente los archivos binarios Apache Commons Daemon Procrun, extraerá estos archivos binarios en el directorio de distribución del servicio y creará archivos por lotes para la instalación / desinstalación del servicio.
En el ${project.buildDir}/windows-service
directorio encontrará ejecutables del servicio, scripts por lotes para la instalación / desinstalación del servicio y todas las bibliotecas de tiempo de ejecución. Para instalar el servicio, ejecute <project-name>-install.bat
y si desea desinstalarlo, ejecute el servicio <project-name>-uninstall.bat
. Para iniciar y detener el servicio, use el <project-name>w.exe
ejecutable.
Tenga en cuenta que el inicio del servicio de manejo de métodos debe crear e iniciar un subproceso separado para llevar a cabo el procesamiento, y luego regresar. El método principal se llama desde diferentes subprocesos cuando inicia y detiene el servicio.
Para obtener más información, lea sobre el complemento y Apache Commons Daemon Procrun.