我正在研究Java RMI。我在端口2028上運行我的rmiregistry時遇到了小問題,因爲我已經使用它來運行我的測試程序。我可以使用其他端口來運行我的程序,但我想知道,我們如何關閉運行在端口上的rmiregistry?如何關閉運行在特定端口上的rmiregistry?
6
A
回答
9
如果你想這樣做編程,我們做這樣的事情:
// create the registry
Registry rmiRegistry = LocateRegistry.createRegistry(port);
...
// connect to it
JMXConnectorServer connector =
JMXConnectorServerFactory.newJMXConnectorServer(url,
new HashMap<String, Object>(),
ManagementFactory.getPlatformMBeanServer());
// do stuff with it ...
// close the connection
if (connector != null) {
connector.stop();
}
// deregister the registry
if (rmiRegistry != null) {
UnicastRemoteObject.unexportObject(rmiRegistry, true);
}
這裏的full code for our JMXServer class。我們在創建其中的2個並完全取消註冊時遇到問題,因此我們確保在不同的端口上運行我們的單元測試。
我在我的SimpleJmx JMX客戶端/服務包中使用此代碼。
1
6
經過這麼多麻煩,我突然意識到rmiregistry運行在shell的背景下。因此,我們必須先關閉它,然後將其關閉,然後關閉它。它的工作。
BTW要拿前景只是類型:
% fg
,然後將其關閉鍵入:
按Ctrl + C
就是這樣。非常感謝所有試圖幫助我的人。
1
如果rmi註冊表已經在使用該端口,並且您想要重新綁定服務而不使用其他端口。您可以嘗試下面的代碼
Registry registry = null;
try {
registry = LocateRegistry.createRegistry(1099);
} catch (ExportException ex) {
registry = LocateRegistry.getRegistry(1099);
} catch (RemoteException ex) {
Logger.getLogger(Server.class.getName()).log(Level.SEVERE, null, ex);
}
相關問題
- 1. 如何檢查NSIS中特定端口上運行的進程
- 2. 如何在端口80上運行Node.js?
- 3. 如何在80端口上運行n2o?
- 4. Vim:在特定行上關閉摺疊
- 5. 在特定端口和ssl上的eclipse中運行jsp
- 6. 如何獲得只在Windows的特定端口上運行的進程ID?
- 7. 獲取NODE JS在特定端口上運行
- 8. 端口5432在Google Compute Engine上關閉
- 9. 如何在主窗口關閉時關閉自定義窗口?
- 10. 窗體關閉後,從特定的上下文運行代碼?
- 11. 備用端口上運行的Tomcat Web應用程序特定
- 12. 子窗口關閉時如何運行父窗口的功能?
- 13. Tkinter窗口在運行時關閉
- 14. 在默認端口80上運行其他端口上的magento
- 15. 如何在窗口關閉時使用Caliburn.micro在您的ViewModel上運行代碼
- 16. 如何在iPhone ios4.2上的特定端口上收聽?
- 17. 如何關閉某些USB端口
- 18. 如何在C#中綁定webclient對象上的特定端口
- 19. 命令是否可以在同一主機上的特定端口上運行?
- 20. 運行格里特在端口8080
- 21. 在特定端口上的Localhost網站
- 22. 如何在8080上運行不同端口上的鶯(jruby)
- 23. 如何在不同的端口上進行精簡運行?
- 24. Java串行端口關閉塊
- 25. 打開和關閉串行端口
- 26. 在運行在特定端口上的網絡中查找服務器
- 27. 在不同的端口上運行Hook.io
- 28. TcpListener:如何偵聽所有接口上的特定端口?
- 29. 在RMIServers的不同主機上運行RMIRegistry
- 30. AutoHotKey:在窗口事件(關閉)上運行代碼
您是以編程方式或手動將rmiregistry作爲獨立進程啓動的嗎? – Tudor
不,我正在啓動Linux shell,如下所示%rmiregistry 2028& – slonkar
如果您是手動啓動它,難道您不能手動停止它嗎? – Tudor