Сборка задачи JarBundler ant (OS X), которая не запускается в папке Mac/Application — разрешение отклонено

Я использовал задачу муравья jarbundler для создания OSX (10.6.4) XXX.app для моего Java-приложения. Проблема в том, что он нормально запускается в любом другом каталоге, кроме каталога /Applications. Взгляд на права доступа к файлам не показывает ничего плохого. Я могу заставить его работать двумя способами - оба не подходят для реальных развертываний:

  1. Создайте .app с графическим интерфейсом Jar Bundler (сложно автоматизировать повторно)
  2. Запустите и остановите файл .app в другом каталоге (например, в моем каталоге сборки), а затем скопируйте файл .app в /Applications/MyAppDir (не решение для сценария установки!). Тогда это работает!

Ошибка в консоли OS X:

posix_spawn("/Applications/JyroJMS.app/Contents/MacOS/JavaApplicationStub", ...): Permission denied

Я пробовал различные варианты в задаче упаковщика Jar, например StartOnMainThread=true.

Какие-либо предложения ?


person Serge Merzliakov    schedule 18.08.2010    source источник


Ответы (1)


Я обнаружил проблему (проблемы): 1. Я использую izpack для развертывания пакета приложений в ошибочной попытке стандартизировать процесс установки на разных платформах. Это вызывало проблемы с разрешениями на выполнение JavaApplicationStub. 2. Кроме того, задача ant jarbundler.jar, по-видимому, использует старый JavaApplicationStub. Когда я заменил его на версию java 6, все пошло хорошо.

Итак, извлеченные уроки: - Я не буду пытаться создать "универсальный" установщик - это не сработает - Буду использовать сжатые образы дисков для развертывания пакета приложений

person Serge Merzliakov    schedule 18.08.2010
comment
Кроме того, использование задачи zip ant также удаляет разрешение на выполнение. Это означает, что вы не можете связать приложение с ОС, отличной от OSX, поскольку для dmg требуется hdiutil или подобное. - person Daniel Beck; 18.08.2010
comment
Когда почему (какой-то парень из рубинового сообщества давно) разрабатывал обувь для OS X [много лун назад], он столкнулся с проблемой сборки приложения для не-OS X. В конце концов он нашел кроссплатформенный инструмент для iPhone. Ребята из команды разработчиков, чтобы создать файл DMG. - person nelsonjchen; 14.11.2010