目前的任務涉及建立一個包含您的程式碼、第三方JAR 檔案及其隨附的DLL 依賴項的JAR文件。這個問題引起了人們的關注,特別是以 SWT 函式庫為例。
解決方案在於將所有內容打包在 JAR 檔案中。然而,存在一個重要的警告:在使用 DLL 之前,您必須從 JAR 中提取它們並將它們儲存在硬碟上。如果不這樣做,您將無法訪問它們。
進一步澄清一下,將 DLL 或其他檔案打包到 JAR 中時,該過程類似於建立 ZIP 檔案。只需在 JAR 結構中包含必要的文件即可。
作為範例,請考慮以下 Java 程式碼片段:
// ... static { logger.info("Loading DLL"); try { System.loadLibrary(ACWRAPPER); logger.info("DLL is loaded from memory"); } catch (UnsatisfiedLinkError e) { loadFromJar(); } } private static void loadFromJar() { // we need to put both DLLs to temp dir String path = "AC_" + new Date().getTime(); loadLib(path, ACWRAPPER); loadLib(path, AAMAPI); loadLib(path, LIBEAU); } private static void loadLib(String path, String name) { // ... } // ...
此程式碼示範了從 JAR 中提取 DLL,並將其放置在臨時目錄,然後載入到記憶體中。透過了解此過程,您可以有效地建立包含所有必要元件(包括 DLL 依賴項)的 JAR 檔案。
以上是如何將 DLL 依賴項與 Java 程式碼打包到單一 JAR 檔案中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!