我有一個Java應用程序生成信息並在屏幕上打印出這些信息。我的問題是得到這些信息並將它們轉移到另一個Java應用程序。一個自己的main.I知道這似乎太籠統了,但我不知道如何解釋這個案例研究更好創建一個Java應用程序來從另一個Java應用程序獲取信息
回答
你的問題是到一般,但這裏有幾個指針(從最底層到最全面):
pipe outpu噸在控制檯:
$ java -jar first-app.jar | java -jar second-app.jar
在這種情況下從
first-app
所有輸出控制檯將被重定向到的second-app
標準輸入。這需要兩個應用程序在同一臺機器上工作。以下所有解決方案都允許跨網絡分發生產者和消費者socket - Java支持它們本身,並很好地
- rmi - 事實上通過二進制協議的Java到Java通信的標準,rpc樣
- web-services - xml基於協議通過http,soap或rest
- jms - 通過異步發送消息所謂的消息代理
- 共享數據庫/文件/內存,例如使用hazelcast
你可以用插座給它(這是兩個過程可以相互溝通的方式之一),你可以在這裏找到一個樣本: http://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html
這聽起來像你對我」重新尋找IPC;進程間通信。
有更多的選擇,但Java RMI(遠程方法調用)能做到這一點,它隱藏了低級別的套接字實現:http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136424.html
是的,我聽說過RMI,但我從來沒有用過它 – user1508419 2012-07-07 11:09:19
好吧,試試吧;它不是非常複雜 – Tom 2012-07-07 11:47:26
mmm我非常喜歡這個解決方案...... – user1508419 2012-07-07 11:08:58
如果您不需要在作者應用程序正在寫入的文件中讀取該文件,則此解決方案將起作用。 – 2012-07-07 11:15:07
@MarkoTopolnik你是對的...我還沒有關於這個問題... – user1508419 2012-07-07 11:21:19
,如果你有第2程序的源代碼,你可能只是做的第一輸出重定向到你的第二個:http://en.wikipedia.org/wiki/Redirection_(computing)
- 1. 從另一個Java應用程序啓動Java應用程序
- 2. 從另一個java應用程序控制java應用程序
- 3. 從另一個Java應用程序cosole
- 4. 從另一個應用程序啓動Java應用程序
- 5. 從另一個應用程序獲取信息
- 6. 從另一個應用程序中獲取信息
- 7. 獲取I /從另一個java程序運行Java程序Ø
- 8. 關閉一個Java應用程序並啓動另一個應用程序
- 9. 從一個Java應用程序啓動多個Java應用程序
- 10. Java:獲取另一個應用程序的類路徑
- 11. 如何從另一個Java應用程序使用NetBeans平臺應用程序
- 12. 從另一個Java應用程序啓動Java類
- 13. 從另一個Java應用程序執行外部java jar
- 14. 從另一個Java應用程序運行桌面應用程序
- 15. 創建一個Java程序
- 16. 從Eclipse Java項目創建一個Android應用程序
- 17. 從main()訪問另一個Java應用程序的線程
- 18. 一個Java應用程序可以在同一臺Linux機器上監視另一個Java應用程序嗎?
- 19. 應用程序請求和從第二個應用程序獲取信息
- 20. 從另一個應用程序檢索信息
- 21. 從另一個應用程序生成的彈出窗口獲取信息
- 22. 使用的ActiveResource POST來創建另一個Rails應用程序
- 23. 如何從另一個java程序調用java程序?
- 24. 創建一個運行一次只-Java應用程序
- 25. 從我的應用程序調用另一個應用程序
- 26. 從另一個應用程序調用應用程序
- 27. 使用iTunes應用程序,從另一個應用程序
- 28. 從另一個應用程序調用應用程序
- 29. 如何應對從另一個應用程序獲取焦點?
- 30. 從另一個容器啓動的調用java應用程序
是源您的控制權下的兩個應用程序的代碼? – 2012-07-07 11:07:17
是的...它完全在我的控制之下... – user1508419 2012-07-07 11:11:08