DLL 종속성을 사용하여 타사 JAR 파일 패키징
Q: 두 개의 DLL 파일과 자체 Java 프로그램이 필요한 Java 라이브러리가 있습니다. 이 라이브러리를 활용하는 것입니다. 모든 구성 요소를 내 코드, 타사 JAR 및 DLL이 모두 포함된 단일 JAR 파일로 결합하려면 어떻게 해야 합니까?
A: DLL 종속성을 통합하는 JAR 파일을 생성하려면:
패키징 영역에서 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!