У меня есть приложение Java на основе SWT, которое работает в Windows, Mac OS и Linux. Я разрабатываю его на своей машине с Windows, и у меня есть тестер с Linux и тестер с Mac. В настоящее время мой процесс создает исполняемый файл .jar для каждой платформы на моем компьютере с Windows (который ссылается на файлы .jar и lib для конкретной платформы с Eclipse.org). У меня есть рабочий установщик для Windows, также созданный сборкой на машине с Windows. Я хочу создать стандартный установщик Mac OS для пользователей Mac. Правильный способ сделать это - создать пакет .app и распространить его через файл dmg. Это не очень хорошо. У меня есть рабочее приложение Java, которое использует SWT и может запускаться из командной строки на всех платформах. У меня есть способ создать .dmg в Windows. Но до сих пор все мои попытки заставить работать пакет .app не увенчались успехом.
Я начал со следования этому руководству: http://www.eclipse.org/swt/macosx/
Но при запуске моего приложения я получаю сообщение об ошибке, что приложения для Power PC не поддерживаются. Это использование тех же двоичных файлов, которые работают из командной строки с использованием java -jar, поэтому проблема должна быть в том, как я собираю. Образец приложения Hello со страницы также не работает, но с другим сообщением об ошибке.
Я искал весь день и нашел этот многообещающий доклад: http://www.parleys.com/#st=5&id=2891&sl=72
В этом выступлении докладчик говорит, что будет способ создать пакет Mac OS .app на любой платформе, используя стандартную программу запуска java. Но я пока не могу найти ни одной выпущенной такой штуки.
Я нашел этот пост, который также выглядит многообещающим: http://www.intransitione.com/blog/take-java-to-app-store/.
Но в этом рецепте говорится, что он не будет работать, кроме как на компьютере с Mac OS.
Я хочу создать пакет .app для Mac OS X на моем компьютере с Windows вместе с установкой Windows и установкой Linux. Было бы предпочтительнее также включить jre как часть пакета приложений (который у меня уже есть для Windows и Linux). Я надеюсь, что кто-то может указать мне правильное направление.