Java exe launcher с поддержкой Windows 7 - PullRequest
30 голосов
/ 17 августа 2011

Проблема

В настоящее время я использую exe4j 4.4.2, чтобы обернуть наше клиентское приложение в собственный исполняемый файл Windows, но результат не так хорошо интегрируется с Windows 7.

Например: когда я щелкаю правой кнопкой мыши на панели задач, он предлагает только всплывающее окно, чтобы закрыть приложение, но без закрепления. С другой стороны, пусковая установка «Затмения» делает это с помощью бравады.

Я ищу программу запуска Java, которая имеет следующие функции:

  • Обтекание банок в собственных исполняемых файлах Windows (без Java Web Start или аналогичных)
  • Не извлекает банку из исполняемого файла
  • Не требуется доступ для записи в "Program Files"
  • В качестве имени процесса используется исполняемое имя файла (только один процесс)
  • Хорошо интегрируется с Windows 7 (особенно при закреплении на панели задач)
  • Позволяет устанавливать аргументы JVM (особенно размер кучи)
  • Гибкая настройка для поиска JRE
  • Легкий
  • Активно поддерживается
  • Хорошо интегрируется в Ant build
  • предпочтительно бесплатно

Я проверил следующее:

exe4j

  • Нет интеграции с Windows 7
  • Это не дорого, но заказ и Распределение лицензий на сборочные машины - это боль.
  • JRE поиск недостаточно гибкий

Затмение Равноденствие

  • не легкий
  • Кажется, делает все, что я хочу, за исключением того, что я понятия не имею, как использовать его с приложением без затмений.
  • Можно ли использовать его за пределами OSGI, мира PDE-Build?

WinRun4J

  • JRE поиск плохо документирован
  • Кажется, не очень широко используется, несмотря на невероятный набор функций, что мне не хватает?

Launch4J

  • Не поддерживает установку имени процесса в Windows 7 (идентификатор ошибки 3353972). Существует патч (идентификатор ошибки 1670471), но он был отклонен со ссылкой на подъем, который мертв.
  • JRE поиск недостаточно гибкий.

JSmooth

  • Кажется, не поддерживается активно.
  • Последний выпуск - с 2007 года, задолго до Windows 7.

Есть ли другие варианты? Есть ли возможность использовать модуль запуска Eclipse с приложением, не основанным на Eclipse?

Ответы [ 4 ]

3 голосов
/ 29 августа 2011

Попробуйте Advanced Installer http://www.advancedinstaller.com/java.html (в этом разделе доступна бесплатная версия).

1 голос
/ 09 сентября 2011

Я бы создал файл bat.Оберните этот файл bat в exe.Вы можете создать EXE с иконкой и все.Попробуй этот bat в exe конвертер:

http://download.cnet.com/Bat-To-Exe-Converter/3000-2069_4-10555897.html

Таким образом, у тебя будет больше контроля.Размер exe очень маленький.

Редактировать: Кроме того, создание exe является одноразовой вещью.

1 голос
/ 31 августа 2011

Я доволен WinRun4J. Поиск JRE у меня работает нормально. Иногда это особенно сильно сказывается на 64-битных системах, если в реестре Windows установлено и зарегистрировано несколько JRE и JDK, но это обычно можно исправить, указав правильный путь в соответствующем INI-файле.

Я не использовал Launch4J, потому что он создает новый (временный) .exe в папке установки JRE, что мне кажется немного странным. Преимущество этого метода в том, что он может использовать один .exe для 32- и 64-битных JVM, хотя

1 голос
/ 26 августа 2011

Для меня это звучит так, будто вам нужно просто запустить Launch4J. Имя процесса совпадает с именем .exe, которое вы запускаете. Отличным примером программы, которая упакована таким образом, является «Keystore Explorer 4.01».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...