ホームページ > Java > &#&チュートリアル > サードパーティの JAR ファイルと DLL の依存関係を含む Java アプリケーションを単一の JAR にパッケージ化するにはどうすればよいですか?

サードパーティの JAR ファイルと DLL の依存関係を含む Java アプリケーションを単一の JAR にパッケージ化するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-24 09:20:10
オリジナル
312 人が閲覧しました

How Can I Package a Java Application with Third-Party JAR Files and DLL Dependencies into a Single JAR?

DLL 依存関係を含むサードパーティ JAR ファイルのパッケージ化

Q: 2 つの DLL ファイルと独自の Java プログラムを必要とする Java ライブラリがあります。このライブラリを利用します。すべてのコンポーネントを、コード、サードパーティの JAR、および DLL の両方を含む単一の JAR ファイルに結合するにはどうすればよいですか?

A: DLL の依存関係を組み込んだ JAR ファイルを作成するには:

  • DLL をパッケージ化します: JAR 内の任意の場所に DLL ファイルを含めますStructure.
  • DLL を抽出します: DLL を使用する前に、JAR からハード ドライブ上の指定された場所に DLL を抽出します。これは、その後の処理に不可欠です。

パッケージ化の領域では、DLL およびその他のファイルは ZIP アーカイブ内のファイルと同様に扱われます。次の Java コードを使用して、JAR から DLL を抽出できます。

import java.io.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;

public class ExtractDLLs {

    public static void main(String[] args) {
        String jarPath = "path/to/my.jar";
        String outputDirectory = "path/to/output";

        try (ZipFile jarFile = new ZipFile(jarPath)) {
            Enumeration<? extends ZipEntry> entries = jarFile.entries();

            while (entries.hasMoreElements()) {
                ZipEntry entry = entries.nextElement();

                if (entry.isDirectory()) {
                    continue;
                }

                if (entry.getName().endsWith(".dll")) {
                    InputStream in = jarFile.getInputStream(entry);
                    OutputStream out = new FileOutputStream(new File(outputDirectory, entry.getName()));

                    byte[] buffer = new byte[1024];
                    int len;
                    while ((len = in.read(buffer)) > 0) {
                        out.write(buffer, 0, len);
                    }

                    in.close();
                    out.close();
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
ログイン後にコピー

DLL またはその他のファイルを JAR にパッケージ化することは、ファイルを ZIP アーカイブにパッケージ化するのと同じくらい簡単であることを覚えておいてください。提供されているコードのデモでは、ZIP ファイル構造を利用して JAR から DLL を抽出します。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート