@MaxLich
java developer

Как можно при запуске приложения в classpath указывать любое количество подключаемых библиотек (в виде jar-файлов)?

Здравствуйте. Столкнулся с ограничением командной строки в виндоуз. У меня сборка проекта идёт через грейдл, для запуска используется автоматически сконструированный bat-ник. Одной из последних строк этого файла идёт строка запуска итогового приложения. И грейдл добавляет в эту строку список всех используемых библиотек (а он немаленький). Соответственно, если папка, откуда запускается приложение, имеет большое имя, то ничего не запускается. Я думаю, что это не такая уж и редкая проблема, и уже должно быть выработано какое-то решение, но пока, порывшись в интернете, я его не нашёл. Подскажите, что надо делать, или хотя бы как это искать.
  • Вопрос задан
  • 226 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Используйте звёздочку, которая работает как подстановочный символ "любой jar в каталоге"
java -cp path/to/dependencies/* package.name.ClassName
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
jamakasi666
@jamakasi666 Куратор тега Java
Просто IT'шник.
Варианты:
- скопировать все зависимости в jre/lib/ext
- собрать все зависимости в 1 единственный jar и указывать его как зависимость
- собрать все зависимости внуть вашей проги тогда даже не надо указывать classpath
- не использовать длинные имена папок и файлов
- подгружать все зависимости непосредственно самой прогой класслоадером перед запуском основного кода
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽