Soalan: Bagaimanakah anda boleh mencipta satu fail JAR yang menggabungkan kod anda, JAR pihak ketiga , dan DLL yang disertakan fail?
Jawapan: Untuk membungkus fail DLL dengan JAR anda, ikut langkah berikut:
Kod Contoh:
Kod Java yang disediakan menunjukkan kaedah untuk memuatkan DLL daripada JAR ke dalam memori:
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); } } }
Nota:
Atas ialah kandungan terperinci Bagaimana untuk Membungkus DLL dengan Kod Java ke dalam Fail JAR Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!