ホームページ  >  記事  >  Java  >  Java コードを含む DLL を単一の JAR ファイルにパッケージ化するにはどうすればよいですか?

Java コードを含む DLL を単一の JAR ファイルにパッケージ化するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-27 14:01:10912ブラウズ

How to Package DLLs with Java Code into a Single JAR File?

DLL インクルードを含む JAR ファイルのパッケージ化

質問: コード (サードパーティ JAR) を組み込んだ単一の JAR ファイルを作成するにはどうすればよいですか? 、およびそれに付随する DLLファイル?

回答: DLL ファイルを JAR とともにパッケージ化するには、次の手順に従います:

  1. DLL ファイルを含めます: JAR 内の任意の場所にある DLL ファイル。
  2. 前に抽出します。 use: DLL にアクセスする前に、JAR から DLL を抽出し、ハードディスクに保存します。

サンプル コード:

提供されている Javaこのコードは、JAR から DLL をロードする方法を示しています。メモリ:

public class Foo {

    static {
        System.loadLibrary(ACWRAPPER);
    }

    private static void loadFromJar() {
        // Extract DLLs to a temporary location
        String path = "AC_" + new Date().getTime();
        loadLib(path, ACWRAPPER);
        loadLib(path, AAMAPI);
        loadLib(path, LIBEAU);
    }

    private static void loadLib(String path, String name) {
        name = name + ".dll";
        try {
            InputStream in = ACWrapper.class.getResourceAsStream(LIB_BIN + name);
            File fileOut = new File(System.getProperty("java.io.tmpdir") + "/" + path + LIB_BIN + name);
            OutputStream out = FileUtils.openOutputStream(fileOut);
            IOUtils.copy(in, out);
            System.load(fileOut.toString());
        } catch (Exception e) {
            throw new ACCoreException("Failed to load required DLL", e);
        }
    }
}

メモ:

  • DLL は JAR から直接ロードできないため、使用前に抽出することが重要です。
  • DLL を JAR にパッケージ化することは、他の種類の DLL をパッケージ化することと似ています。ファイル。

以上がJava コードを含む DLL を単一の JAR ファイルにパッケージ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。