Необхідність включати в jar файл інші jar файли виникає практично завжди, коли ви використовуєте бібліотечні класи.
У таких випадках, а це 99% від усіх випадків, використовуємо заголовок Class-Path:
Class-Path: Lib / SBPJavaAcc.jar Lib / firebirdsql-full.jar
тут я вказав шлях до архіву SBPJavaAcc.jar і до архіву firebirdsql-full.jar, обидва архіву знаходяться в папці Lib. Роздільник між архівами - пробіл. І що ж робити з цим Class-Path? Його треба додати в маніфест.
Розглянемо приклад. Як бібліотечного jar архіву задіємо JarFile.jar - це jar файл з попереднього розділу. І навчимося робити jar файли в середовищі Eclipse.
Ще Jar приклад
Створимо новий проект JarInJar, а в ньому пакет myJar:
Створимо в пакеті myJar клас MainJar (встановіть прапорець public static void main (String [] args)) і змінимо створений майстром код так:
Тепер додамо в проект папку Hilfe: правою кнопкою по кореневій папці проекту -> New -> Folder. Додамо зовнішній архів: правою кнопкою по кореневій папці проекту -> New -> Build Path -> Add External Archives. Вибираємо JarFile.jar з попереднього проекту. результат:
В папці Hilfe зробимо папку Lib, потім, увагу, в провіднику скопіюйте файл JarFile.jar з попереднього проекту і помістіть цю копію в нашу папку Lib. Зробити це можна або прямо в провіднику, або правою кнопкою по папці Lib -> Paste. отримуємо:
Робимо обробник натискання на кнопку "Jar приклад" (спочатку введіть нове поле JarClass jc і вкажіть імпорт import myPack.JarClass). Остаточно отримуємо:
Отже, що ми маємо? Ми створили клас MainJar, який використовує клас JarClass з архівного файлу. Це те що нам потрібно. Ми будемо робити архів проекту JarInJar, а цей проект використовує інший архів: JarFile.jar. Тут не обійтися без роботи з маніфестом.
Маніфест для jar архіву
Правою кнопкою по кореневій папці проекту New -> File, назвіть файл sbp-program.txt.
У файл sbp-program.txt вводимо текст: Manifest-Version: 1.0
Created-By: SBP-Program
Main-Class: myJar.MainJar
Class-Path: Lib / JARFile.jar
X-COMMENT: Lib folder content was added manually
і переведіть курсор на новий рядок, це важливо. отримуємо:
Зверніть увагу, на зображенні курсор на початку нового рядка.
Збережіть проект. Запустіть проект на виконання і переконайтеся, що все працює.