Загрузчик приложений: ошибка при создании файла .pkg с помощью productbuild

Я тестирую команду "productbuild" для архивации моего пакета приложений CEMHapp. Идея состоит в том, чтобы отправить созданный файл .pkg в Mac App Store. На данный момент у меня следующая проблема:

Когда я пытаюсь запустить основную команду:

productbuild --component "CEMHapp.app" /Applications CEMHapp.pkg

Я получаю следующее сообщение об ошибке:

productbuild: error: The component at "CEMHapp.app" is not a bundle.

Я также попробовал команду «pkgbuild», т.е.

pkgbuild --component CEMHapp.app --version 1 --install-location /Applications CEMHapp.pkg

Но появляется следующая ошибка

pkgbuild: Adding component at /Users/wilsondasilva/Desktop/Aplk/CEMHapp.app
pkgbuild: error: Path "/Users/wilsondasilva/Desktop/Aplk/CEMHapp.app" is not a valid bundle component (using destination path "/Users/wilsondasilva/Desktop/Aplk")

Странно то, что файл CEMHapp.app работает как часы, поэтому я не понимаю, почему система выдает мне вышеописанную ошибку. Может ли кто-нибудь пролить свет на эту тему и дать мне некоторые рекомендации?

CEMHapp — это бесплатное приложение с открытым исходным кодом, разработанное с использованием QtCreator и Python. Пакет (CEMHapp.app) был создан с помощью pyinstaller и может быть загружен по адресу http://concrete.fsv.cvut.cz/~wilson/Software/CEMHapp_v.1.0_MacOSX_10.9.2.dmg

С уважением и заранее спасибо, В.


person Wbr    schedule 18.05.2014    source источник


Ответы (1)


Думаю, я нашел решение одной из проблем, которое частично отвечает на мой вопрос.

Я изменил некоторые части команды pkgbuild, и файл CEMHapp.pkg был успешно создан.

Вот команда, которую я использовал:

pkgbuild --identifier com.CEMHapp.pkg.app --install-location /Applications --root /Users/wilsondasilva/Desktop/Aplk CEMHapp.pkg

после завершения процесса сообщение в терминале читается

pkgbuild: Wrote package to CEMHapp.pkg

Я установил CEMHapp.pkg, и все заработало. Тем не менее, файл .icns, связанный с CEMHapp, каким-то образом был утерян и заменен файлом значка по умолчанию. Также в /Applications появилась копия CEMHapp.pkg (с нулевыми байтами). Кто-нибудь знает, что не так?

Кроме того, я до сих пор не знаю, как правильно использовать сборку продукта. Как и pkgbuild, он всегда работает, когда я использую аргумент --root, но то же самое не верно при использовании --component, см. сообщение об ошибке ниже:

pkgbuild --identifier com.CEMHapp.pkg.app --install-location /Applications --component /Users/wilsondasilva/Desktop/Aplk CEMHapp.pkg
pkgbuild: Adding component at /Users/wilsondasilva/Desktop/Aplk
pkgbuild: error: Path "/Users/wilsondasilva/Desktop/Aplk" is not a valid bundle component (using destination path "/Users/wilsondasilva/Desktop")

Помните, что согласно библиотеке для разработчиков Mac,

«При создании архивов продуктов для отправки в Mac App Store используйте только режим --component в productbuild. Другие режимы будут создавать архивы продуктов, совместимые с установщиком OS X, но не обязательно приемлемые для Mac App Store. "

Ура, В.

person Wbr    schedule 18.05.2014
comment
Я считаю, что ошибка при использовании product build --component может быть связана с тем, что мое приложение не подписано идентификатором разработчика Apple. Кто-нибудь что-нибудь знает об этом? - person Wbr; 18.05.2014