Rmic - compilar com estrutura de pacotes

Pessoal, estou tentando compilar com rmic um helow world em rmi. Mas esta dando classe não encontrada.

Usando eclipse criei um projeto “AplicacaoRMI”
e dentro desse projeto criei um package chamado “servidor”
Dentro do package servidor criei trez classes(Mensagem.class, MensagemImpl.class, ServidorRMI.class
Em termos de diretório fica = /workspace/AplicacaoRMI/src/servidor.

Obs todas as três classes tem na primeira linha o comando “package servidor;”

O problema é: não estou sabendo compilar com o comando rmic MensagemImpl
No tutorial manda fazer do geito abaixo: rmic -v1.1 -d C:\workspace\SplicacaoRMI\ -classpath C:\workspace\AplicacaoRMI servidor.MensagemImpl

Ja tentei um monte de combinação e nada.
Cada Vez da um erro diferente os mais comuns sao:
error: Class MensagemImpl not found.
ou
/workspace/AplicacaoRMI/bin/servidor/MensagemImpl.class does not contain type MensagemImpl as expected, but type servidor.MensagemImpl. Please remove the file, or make sure it appears in the correct subdirectory of the class path.

As Classes seguem abaixo, se alguem puder me ajudar fico muito grato.

[code]package servidor;

import java.rmi.Remote;
import java.rmi.RemoteException;

public interface Mensagem extends Remote {

  public String mostraMensagem() throws RemoteException;

}
[/code]

[code]package servidor;

import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

public class MensagemImpl extends UnicastRemoteObject implements Mensagem {

private static final long serialVersionUID = 1L;
  // precisamos definir um construtor pois o default não
  // gera RemoteException
        protected MensagemImpl() throws RemoteException {
              // opcional, vai ser chamado mesmo que não
              // o coloquemos aqui
              super();
        }
        public String mostraMensagem() throws RemoteException {
              return "RMI, EU CONSEGUI!";
        }
  }

[/code]

package servidor;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

public class ServidorRMI {
      public static void main(String[] args) throws RemoteException {
            int port = 1099; //número-padrão da porta para o rmiregistry.
            try {
                  //registra a porta
                  LocateRegistry.createRegistry( port );
            } catch ( Exception e1 ) {
              }
            //Criação do gerenciador de segurança (Security Manager)
            if ( System.getSecurityManager() == null )
                     System.setSecurityManager(new SecurityManager());
            try {
                    String name = "MensagemServer";
                         // aqui criamos o objeto que sera acessado
                         // remotamente
                         MensagemImpl m = new MensagemImpl();
                     Registry registry = LocateRegistry.getRegistry( port );
                     // aqui registramos o objeto 'm' como 'name'
                     // no servidor
                     registry.rebind(name, m);
                    System.out.println( " Servidor RMI Rodando... ");
                    } catch (Exception e) {
                      System.err.println("exceção RMI:");
                      e.printStackTrace();
                  }
      }
}