# RMI-Programm ausführen



## lecorniaud (1. Apr 2007)

Hallo,
um ein Remote-Objekt zu implementieren, müsste ich eine Klasse MOTDImpl erstellen, welche eine Unterklasse von java.rmi.server.UnicastRemoteObjekt ist und eine Remote-Methode implementiert .Um das Programm MOTDImpl auszuführen, starte ich zunächst die RMI-Registrierungsdatenbank mit dem MS-DOS Befehl : 
rmiregistry
dann gebe ich folgenden Befehl ein :
rmi –d D:\Programmierung\RMI\beispiel MOTDImpl
ich bekomme immer diese Fehlermeldung: „error : Class MOTDImpl not found”  
obwohl die KLasse MOTDImpl im angegebenen Verzeichnis richtig vorhanden ist .
Könnte jemand bitte mit RMI Erfahrung mir helfen meine Klasse ausführen zu können, woran könnte der Fehler liegen ? Ich verwende Eclipse 3.2 als Entwicklungsumgebung.
Im voraus vielen Dank.


```
import java.io.*;
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;

/** Eine Implementierung des Remote-Interface MOTD */
public class MOTDImpl extends UnicastRemoteObject implements MOTD {
```


----------



## M.L. (1. Apr 2007)

Ein Rateversuch: die Dateien liegen nicht im selben Package.
Ganz am Anfang der Datei müsste 'package' mit einem aussagekräftigen Namen zu finden sein.


----------



## Gast (1. Apr 2007)

Doch,die Dateien liegen im selben Package.Im Code-Stück ist leider nicht zu sehen.


----------



## L-ectron-X (1. Apr 2007)

> rmi –d D:\Programmierung\RMI\beispiel MOTDImpl


Einen Befehl/Tool *rmi* gibts nicht.

Das Programm wird mit *java MainClass* (Java-Interpreter + Klasse) gestartet.


----------



## lecorniaud (1. Apr 2007)

Eigentlich lautet der Befehl :
rmic –d D:\Programmierung\RMI\beispiel MOTDImpl
Es war nur ein Tippfehler von mir.
RMIC ist ein Kommandozeilenprogramm, das ähnliche Optionen wie javac kennt.rmic erwartet den Namen der Implementierungsklasse als Argument.


----------



## Guest (1. Apr 2007)

lecorniaud hat gesagt.:
			
		

> RMIC ist ein Kommandozeilenprogramm, das ähnliche Optionen wie javac kennt.rmic erwartet den Namen der Implementierungsklasse als Argument.


OK, das weisst du. Lese jetzt noch, wozu rmic ist, dann ist dein Problem geklärt.


----------



## L-ectron-X (2. Apr 2007)

Wenn du mit Java >= 1.5 programmierst, brauchst du nicht mal mehr den RMI-Compiler (rmic) aufrufen, um die Stub- und die Skeleton-Klasse zu erzeugen. Ab Java 1.5 wird das automatisch gemacht.


----------

