Launch4J exe по-прежнему нужен файл JAR

Launch4j кажется простым в настройке, но после того, как исполняемый файл был сгенерирован, он не запускается из другого места.

Файл jar, используемый для создания модуля запуска, по-прежнему должен находиться в той же папке, что и exe-файл.

Я думал, что это будет завернуть банку в exe и может запустить его из любого места? Я делал это с JSmooth раньше, и это работало хорошо. Но JSmooth больше не поддерживается в Windows 7.

Также не смог найти надлежащей документации для этого.

Что здесь происходит не так.

Спасибо, Шанкар.

2 ответа

Если мы говорим о JAR, содержащем основной класс, то это настраивается: http://launch4j.sourceforge.net/docs.html То, что вы хотите установить, это dontWrapJar для true, но это значение по умолчанию, поэтому вам пришлось что-то изменить, если это не в EXE. При переключении этого логического значения можно ясно увидеть разницу в размерах (например, в моем случае это 40K без JAR и 56 с включенным 16K JAR, также в Total Commander я могу использовать Ctrl+PgDn для входа в EXE как любой другой ZIP, если у него есть JAR входит в комплект).

В файле POM при использовании com.akathist.maven.plugins.launch4j:launch4j-maven-plugin У плагина опция названа одинаково - dontWrapJar, В таком случае jar Опция должна указывать на встроенный JAR (в цели), потому что он относительно EXE (и оба идет к цели), в большинстве случаев это просто имя JAR. Когда JAR находится рядом с EXE-файлом, запускать EXE-файл необязательно, и его можно удалить, чтобы проверить.

Это ничего не говорит о других зависимостях, для которых есть другие параметры, и если вам нужно все в EXE, чем вам нужно использовать какое-то решение uberjar.

Ваш простой сценарий работает на меня. Единственными опциями, которые мне нужно было заполнить, были Output file, Jar и Min JRE version. Все остальное остается по умолчанию.

Важно, чтобы все ваши внешние библиотеки были упакованы в JAR, а не в папку рядом с сгенерированным JAR. Чтобы добиться этого, выберите опцию "Извлечь необходимые библиотеки в сгенерированный JAR" в Eclipse при экспорте работающего JAR.

Другие вопросы по тегам