Cannot find daemon loader org/apache/commons/daemon/support/DaemonLoader

17Abr10

El problema se presenta cuando queremos iniciar una aplicación que utiliza Commons Daemon junto a JSVC (una solución bastante práctica para ejecutar aplicaciones desarrolladas en Java como servicios de Linux) Si intentamos iniciar el servicio sin éxito y revisando el log de errores encontramos el siguiente mensaje:

Cannot find daemon loader org/apache/commons/daemon/support/DaemonLoader
Service exit with a return value of 1

El principal problema es que JSVC no puede “ver” el jar de Commons Daemon (por ejemplo commons-daemon.jar). El motivo de esto puede ser alguna de las siguientes:

  • El usuario con el que estamos ejecutando el servicio no tiene permisos de lectura sobre la librería
  • El classpath enviado a JSVC es incorrecto

Si el problema es de permisos con un simple chmod lo solucionaremos. Sino es este el caso hay que revisar el comando que se está ejecutando (prestar atención al parámetro cp pasado a jsvc). Por ejemplo:

jsvc -home $JAVA_HOME -errfile $ARCH_ERROR -pidfile $ARCH_PID -procname $NOMBRE_SERVICIO -cp $CLASSPATH $DAEMON_CLASS

Más Info




A %d blogueros les gusta esto: