Какой инструмент упаковки я должен использовать для Java-приложения для Mac / Windows? - PullRequest
2 голосов
/ 26 января 2011

У меня есть настольное приложение Java, которое работает как на MacOS, так и на Windows.

Я понимаю, что у меня не может быть одного дистрибутива для каждого, что не является обязательным требованием.

Мне нужно знать, какой инструмент или инструменты лучше всего использовать при поставке Java-приложения для каждого.

Инструмент должен установить предварительные условия (в данном случае Java и некоторые JAR-файлы) и выглядеть как родные для соответствующей операционной системы.

Ответы [ 2 ]

5 голосов
/ 26 января 2011

Что касается ситуации с Java в OS X:

  1. В настоящее время JDK 6 входит в состав ОС.
  2. Предположительно, следующая версия ОС будет по-прежнему включать JDK 6.
  3. Публично заявлено, что в ОС будет четко определенное место для установки нескольких копий среды выполнения Java, открытый интерфейс для выбора версии Java и т. Д. См. здесь .
  4. Apple начала вносить свой собственный код в открытое сообщество JDK, поэтому JDK 7 должен быть доступен для отдельной загрузки, см. здесь .
  5. Таким образом, вы даже не должны включать саму среду выполнения Java в свое приложение Java.Вы не должны устанавливать Java в случайном месте в файловой системе, например.

Что касается того, как вы должны развертывать Java-приложения в OS X:

  1. DoubleЩелчок баночки просто работает.
  2. Однако это не будет красиво, потому что в Dock у вас будет только общий значок Java.Вы этого не хотите.
  3. Вы должны использовать Jar Bundler, чтобы сделать его честным приложением для OS X.На Mac он поставляется с XCode.См. документацию здесь.Вы можете сделать это и на компьютере без Mac, используя этот проект с открытым исходным кодом .
1 голос
/ 26 января 2011

В Windows я бы порекомендовал JSmooth или WinRun4J .

На Mac ситуация несколько сложнее (как отмечают комментарии), но достаточно просто распространить исполняемый JAR-файл.

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