title: JSVC not starting and I'm not getting any error messages
body: <p>I'm trying to run a simple JSVC program. However it does not start when I run the script.
  I'm also not getting any errors in the log files, terminal or any syslogs I can find.</p>
  
  <p>It does not seem that JSVC validates the class paths because if I purposely make them invalid I
  still don't get an error about it.</p>
  
  <p>It DOES validate other parameters that it will complain about if wrong or missing so JSVC IS installed.</p>
  
  <p>Java home should also be correct as it complained about that before.</p>
  
  <p>Script:</p>
  
  <pre><code>#!/bin/sh
  
  # Setup variables
  EXEC=/usr/bin/jsvc
  JAVA_HOME=/usr/lib/jvm/default-java
  CLASS_PATH="/usr/share/java/commons-daemon.jar":"/home/xxxuserxxx/Desktop/Tutorials/StackOverflow_version/EchoTest.jar"
  CLASS=Main
  USER=xxxuserxxx
  PID=/tmp/example.pid
  LOG_OUT=/tmp/example.out
  LOG_ERR=/tmp/example.err
  
  do_exec()
  {
      $EXEC -home "$JAVA_HOME" -cp $CLASS_PATH -user $USER -outfile $LOG_OUT -errfile $LOG_ERR -pidfile $PID $1 -wait 20 $CLASS
  }
  
  case "$1" in
      start)
          do_exec
              ;;
      stop)
          do_exec "-stop"
              ;;
      restart)
          if [ -f "$PID" ]; then
              do_exec "-stop"
              do_exec
          else
              echo "service not running, will do nothing"
              exit 1
          fi
              ;;
      *)
              echo "usage: daemon {start|stop|restart}" &gt;&amp;2
              exit 3
              ;;
  esac
  </code></pre>
  
  <p>Code:</p>
  
  <pre><code>import java.util.Timer;
  import org.apache.commons.daemon.*;
  
  public class Main implements Daemon {
  
  
  private static Timer timer = null;
  
  public static void main(String[] args) {
      System.out.println("Hello");
      timer = new Timer();
      timer.schedule(new EchoTask(), 0, 1000);
  }
  
  @Override
  public void init(DaemonContext dc) throws DaemonInitException, Exception {
      System.out.println("initializing ...");
  }
  
  @Override
  public void start() throws Exception {
      System.out.println("starting ...");
      main(null);
  }
  
  @Override
  public void stop() throws Exception {
      System.out.println("stopping ...");
      if (timer != null) {
          timer.cancel();
      }
  }
  
  @Override
  public void destroy() {
      System.out.println("done.");
  }
  
  }
  
  import java.util.Date;
  import java.util.TimerTask;
  
  public class EchoTask extends TimerTask {
      @Override
      public void run() {
          System.out.println(new Date() + " running ...");
      }
  }
  </code></pre>