2014-08-21 6 views
0

У меня есть файл Jar (предположим jar1), который нуждается в нескольких других файлах jar (присутствует в том же каталоге, предположим, myjar1.jar и myjar2.jar и т. Д.) Во время время выполнения. Я не могу сделать это с помощью файла манифеста. Я добавил нижеJava: добавление JAR-файлов в путь к другому файлу Jar

Class-Path: myjar1.jar 

, а также

 Class-Path: ./* 

я создаю Jar (jar1) в моем местном и толкая его на сервер. Во время компиляции и построения Jar (jar1) я не знаю банок (и мне они не нужны для компиляции), которые я должен добавить к пути к классу. Как только я скопирую его на сервер, я хочу, чтобы другие jars, присутствующие в этом каталоге, находились в пути класса моего Jar (jar1).

PS Я прочитал почти все статьи о добавлении classpath в Jar, и я знаю, что мы не можем добавить classpath как часть аргументов.

У меня есть полный контроль над файлом манифеста при компиляции и построении Jar.

ответ

0

Вы должны включить все зависимые файлы JAR в файл манифеста, как показано ниже. Используйте пробел в качестве разделителя.

Class-Path: lib/myjar1.jar lib/myjar2.jar 

После создания вашего JAR-файла извлеките JAR и проверьте, правильно ли создан файл манифеста.

+0

Я пробовал это как упоминание в моем вопросе, но его не работает –

+0

Вы уверены, что вы добавили все зависимые JARs в пространстве, отделенном от пробелов? Вы проверили файл манифеста внутри JAR-файла после его создания? Если у вас есть правильный файл манифеста в JAR, и все зависимые JAR-файлы скопированы в тот же каталог, где размещен ваш JAR, все должно работать должным образом. –

+0

Он не загружает указанные банки во время выполнения. –

Смежные вопросы