2015-10-18 77 views
0

上運行RMI註冊我學習RMI概念,已經建立了一個簡單的程序,從採取基準噴墨頭的第一個Java。所有在我第一次通過命令提示符運行代碼時都很好。不能在我的系統

下一次我跑了代碼的命令:

rmiregistry 

花了太長時間來加載和什麼都沒有發生。

我甚至嘗試在這個線程解決方案,但沒有happend。

need help to run RMI Registry

還當我跑我的服務器和客戶端文件,我得到這個錯誤:

Exception: java.rmi.ConnectException: Connection refused to host: 192.168.1.105; nested exception is: 
    java.net.ConnectException: Connection refused: connect 

我的源代碼:

myremote.java

import java.rmi.*; 

public interface myremote extends Remote 
{ 
    public String sayhello() throws RemoteException; 
} 

Server.java

import java.rmi.*; 
import java.rmi.server.*; 

public class Server extends UnicastRemoteObject implements myremote 
{ 
    public Server() throws RemoteException{} 

    public String sayhello() 
    { 
     return("Server says hi"); 
    } 
    public static void main(String args[]) 
    { 
     try 
     { 
      myremote S = new Server(); 
      Naming.rebind("remotehello",S); 
     } 
     catch(Exception E) 
     { 
      System.out.println("Exception: "+E); 

     } 

    } 
} 

client.java

import java.rmi.*; 
public class client 
{ 
    public static void main(String[] args) 
    { 
      client c = new client(); 
      c.go(); 
    } 

    public void go() 
    { 
     try 
     { 
      myremote S=(myremote) Naming.lookup("rmi://127.0.0.1/remotehello"); 

      System.out.println("Output:"+S.sayhello()); 
     } 
     catch(Exception E) 
     { 
      System.out.println("Exception: "+ E); 
     } 
    } 
} 
+0

你的意思是什麼由「花了太長時間來加載」?而'沒有發生'?而不是什麼? – EJP

回答

0

Can't run RMI registry on my system

你沒有提供這方面的證據。

took too long to load

我不知道這是什麼意思。證據?

nothing happened.

什麼都不應該發生。 RMI註冊表不會打印任何內容。它只是坐在那裏。

運行它,然後再試一次。你會感到驚訝。

+0

我也跑了好幾遍。但是我的服務器和客戶端文件會產生上述異常。 –

+0

那隻能說明你還沒有開始註冊表。 – EJP