Подтвердить что ты не робот

Java exe запуска с поддержкой Windows 7

Проблема

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

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

Я ищу java exe launcher, который имеет следующие функции:

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

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

exe4j

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

Eclipse Equinox

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

WinRun4J

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

Launch4J

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

JSmooth

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

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

4b9b3361

Ответ 1

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

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

Ответ 3

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

Ответ 4

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

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

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

Изменить: Кроме того, создание exe - это одно время.