code: private Commandline _createCommandLine ()
    {
      /*
       * NOTE: This method is designed to work with plexus-utils:1.1 which is used
       * by all Maven versions before 2.0.6 regardless of our plugin dependency.
       * Therefore, we use setWorkingDirectory(String) rather than
       * setWorkingDirectory(File) and addArguments() rather than createArg().
       */
  
      final Commandline cli = new Commandline ();
  
      cli.setExecutable (this.executable);
  
      if (this.workingDirectory != null)
      {
        cli.setWorkingDirectory (this.workingDirectory.getAbsolutePath ());
      }
  
      final String classPath = _getClassPath ();
      if (classPath != null && classPath.length () > 0)
      {
        cli.addArguments (new String [] { "-cp", classPath });
      }
  
      if (this.mainClass != null && this.mainClass.length () > 0)
      {
        cli.addArguments (new String [] { this.mainClass });
      }
  
      cli.addArguments (_getArguments ());
  
      return cli;
    }
docs: Creates the command line for the new JVM based on the current
  configuration.
  
  @return The command line used to fork the JVM, never <code>null</code>.