Выполнение jar-файла с jar-файлами в папках - PullRequest
0 голосов
/ 25 января 2012

Я в папке E: / foo / bar в среде Windows. У меня есть файл jar как E: /foo/bar/a.jar. Также внутри foo / bar есть много jar-файлов. Также в foo / bar есть еще один каталог с именем ext. Он также включает в себя множество файлов JAR.

Я хочу запустить a.jar с этими jar-файлами, включенными в путь к классам (как текущий каталог, так и каталог ext). Так что я использовал это.

java -jar a.jar -classpath *:/ext/*

Это не сработало. Я не добавил никаких записей в MANIFEST.MF в a.jar, думая, что это будет извлечено из записи -classpath. Что я тут не так делаю?

Спасибо

1 Ответ

1 голос
/ 25 января 2012

Параметр -classpath игнорируется, если указано -jar.

Я вижу два возможных варианта действий:

  1. Поместите манифест в основную банку, в которой указывает , укажите другие банки.
  2. Укажите путь к классу во время выполнения.
    1. Отбросить опцию -jar вызова.
    2. Укажите все зависимые банки
    3. Добавьте полное имя класса в конец команды, например,
      java -classpath *:/ext/* com.our.MainClass
...