To run without class loading: Compile all java files. Make sure your classpath is clean. Run rmic -v1.2 HelloImpl In one MS-DOS window start rmiregistry 6000 java HelloServer In a second MS-DOS window java HelloClient To run with class loading: Start the servletrunner. (I assume servlet-root is where your html pages are) Copy your .class files into your servlet-root. Delete from your rmi directory all .class files, except interface and client Make sure your classpath is clean. In one MS-DOS window cd servlet-root cd .. start rmiregistry 6000 cd servlet-root java -Djava.class.path=. -Djava.rmi.server.codebase=http://localhost:8080/ HelloServer In another MS-DOS window java HelloClient