2010-11-23 7 views
3

У меня есть сценарий Ant, который превращает мое приложение Java в хороший пакет Mac Bundle, используя задачу JarBundler. Проблема в том, как мне теперь превратить это в .pkg-файл для распространения?Как запустить packagemaker из скрипта сборки?

Я смотрю с помощью инструмента командной строки packagemaker (находится в/Developer/USR/BIN/packagemaker), но он имеет ряд недостатков:

  1. Если я использую '--doc' чтобы указать его в файл .pmdoc (построенный с использованием GUI PackageMaker), тогда мне придется вручную изменять содержимое .pmdoc всякий раз, когда я добавляю файлы в свой проект.
  2. Если я использую параметр «-root» для создания пакет на основе пакета приложений, то кажется, что я не получаю много функций GUI (например, включая текст лицензии).

Как другие люди производят .pkg-файл со своим скриптом сборки?

Благодаря

ответ

1

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

2

Я использую следующий построить пакет из pmdoc и в DMG, содержащем пакет на OS X 10.6:

/Developer/usr/bin/packagemaker --verbose --doc [project].pmdoc --out [project].pkg 
mkdir -p dmg 
cp -pR [project].pkg dmg 
hdiutil create dmg/[Project]-r$SVN_REVISION.dmg -volname "[Project]" -fs HFS+ -srcfolder dmg 
0

Вы можете использовать --resources варианты packagemaker, чтобы добавить папку ресурсов в пакет. Если вы создаете пакет более старого стиля (10.3 и, возможно, 10.4 целевой), все, что вам нужно сделать, это поместить файлы с соответствующими именами (например, (лицензия, ReadMe, приветствие). (Rtf | html) и фон. (Jpg | gif | pdf | tif)), необязательно организованный в подпапки .lproj, и они будут включать &, используемые пакетом. Похоже, что это не работает с дистрибутивами (плоские пакеты в 10.5 и некоторые 10.4-пакеты), так как имена файлов ресурсов должны быть указаны в файле распространения, и я не уверен, как их разместить там с помощью packagemaker.

Смежные вопросы