簡體   English   中英

如何用Java運行ZeroMQ?

[英]How to run ZeroMQ with Java?

我在使用Eclipse和Windows XP使用Java運行ZeroMQ時遇到了問題。 我已成功安裝[我認為] 0MQ庫以及Java綁定。 我以前的說明就在這里

構建了兩個文件: zmq.jarjzmq.dll 我將jar文件放在我的項目中,這允許代碼編譯好。 我還將java.library.path設置為dll的目錄,將perf目錄添加到我的項目中,並將libzmq.dll添加到我的PATH中。 (全部按照說明)。

我仍然得到以下我無法解決的異常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\\jzmq\\lib\\jzmq.dll: Can't find dependent libraries

jzmq.dll依賴於哪些其他庫? 我試過將libzmq.dll放在任何地方,但這沒有幫助。 是我試圖開始工作的代碼示例。

謝謝。

把任何dll放在Windows root或Windows System32中都是難看的解決方案,它只是把你拉到Dll HELL。

您需要做的是在系統路徑中添加ZQM二進制路徑。

我在一小時內編譯了64位ZMQ和JZMQ,這是我的文件夾結構:

c:\ZMQ\bin  
 ---  jzmq.dll, libzmq.dll
c:\ZMQ\lib 
 ---  ZMQ.jar

這是一步:

  1. 將binray路徑添加到系統環境中,詳細步驟是控制面板 - 系統---提前設置,並在彈出選項卡中找到'advance' - '環境變量'---找到'PATH' 'system vairiabls'並在值中添加C:\\ ZMQ \\ bin

  2. 打開dos提示符,然后鍵入'where jzmq.dll'(我不確定XP中是否存在where.exe)以確認它是否在PATH中。

  3. 啟動Eclipse,打開項目,右鍵單擊項目名稱,然后在菜單“構建路徑 - 添加外部存檔”中選擇C:\\ ZMQ \\ lib \\ zMQ.jar。

全部完成!

在我的電腦中,該示例正確運行。

您應該將libzmq.dll復制到java.library.path指向的位置並使用:

System.loadLibrary("libzmq")

原因是jzmq依賴於libzmq,因此必須首先加載libzmq。

我剛剛遇到過這個問題。 我通過將jzmq.dll和libzmq.dll放入System32文件夾找到了解決方法。 我不認為這是一個永久性的解決方案,但它暫時起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM