Запуск java без указания пути к классу в командной строке

#java #jar #classpath

#java #jar #путь к классу

Вопрос:

Я указал основной класс и путь к классу для программы Java в манифесте файла .jar, но иногда я хочу запустить класс, отличный от того, который указан в Main-Class атрибуте. Могу ли я заставить java запускать этот класс, все еще извлекая путь к классу из манифеста, чтобы мне не приходилось указывать все это в командной строке с -cp помощью?

Комментарии:

1. Это возможно, потому что плагин сборки maven работает именно так.

2. почему бы вам не предоставить пакетный / командный скрипт для запуска файла jar для u и позволить этому сценарию решить, что делать…

Ответ №1:

Просто поместите файл jar в командную строку с помощью -cp; затем Java будет отслеживать атрибут classpath в манифесте, даже если вы не используете -jar:

 java -cp app.jar MyOtherClass
  

Комментарии:

1. Наконец-то получил возможность подтвердить … это работает! Он добавит Class-Path атрибут к пути к классу точно так же, как при использовании -jar опции.