#java #command-line-interface #executable-jar
#java #интерфейс командной строки #исполняемый файл-jar
Вопрос:
Какой наилучший вариант для упаковки и распространения приложения командной строки, написанного на Java, предназначенного для OS / X и Unix?
Опция executable jar кажется довольно надежной, и мой дистрибутив не обязательно должен быть супер навороченным, поэтому прямо сейчас я просто подумываю о том, чтобы поместить bash-скрипт рядом с этим с соответствующим вызовом java и покончить с этим.
Мне интересно, есть ли что-то похожее на пакет python bdist, который позволил бы мне легко создавать хорошие установщики для обеих целевых платформ. Или, если есть какой-то более очевидный способ, которого мне не хватает, где я могу превратить весь дистрибутив в исполняемый файл, который каким-то образом оборачивает jar.
Ответ №1:
Поскольку вы предоставляете CLI-приложение, возможно, проще всего просто предоставить скрипт, о котором вы уже упоминали. Обычно я стараюсь сохранить его автономным, например, не ссылаться на внешние пути / использовать только относительные пути и т.д. И, возможно, readme.txt
файл.
Если вы хотите предоставить полноценный установщик, возможно, вам захочется взглянуть на IzPack, инструмент для создания установщиков для конечных продуктов Java. Это также позволяет мастеру запускаться в консольном режиме, если у вас нет графической среды, доступной для установки (см. страницу «Функции» по ссылке выше).
Комментарии:
1. Спасибо, Аксель, в итоге я выбрал исполняемый файл jar и скрипт. Хотя стоило спросить на случай, если был получен какой-то правильный способ, о котором я не знал.