Что на самом деле делает опция PackageMaker «Включить корень в пакет»? - PullRequest
4 голосов
/ 03 августа 2011

Я делаю установщик для приложения OS X, но у меня проблемы с пониманием пользовательского интерфейса PackageMaker.Моя версия PackageMaker - 3.0.4, работающая на Lion и Xcode 4.1.

Один из вариантов, в частности, меня смущает.Это флажок «Включить корень в пакет» при редактировании содержимого пакета.В зависимости от того, проверено ли это, часть содержимого моего пакета никогда не устанавливается нигде.

Например, допустим, что мой контент представляет собой один пакет .app, Confused.app.Я хочу установить его на /Applications (пункт назначения).Что именно означает «Включить root в пакет» в этом случае?Если я не укажу, установщик, насколько я вижу, абсолютно ничего не делает.

Есть ли лучший пример, который бы прояснил значение опции?

Ответы [ 2 ]

6 голосов
/ 03 августа 2011

Учитывая случай, когда полезной нагрузкой (т.е. устанавливаемым исходным элементом) является Confused.app (который предположительно содержит подпапку Contents с Info.plist, MacOS, Resources и т. Д. Внутри), а местом установки является / Applications:

  • Если вы отметите опцию «Включить корень в пакет», она сделает то, что вы, вероятно, ожидаете, а именно установит Confused.app в /Applications.
  • Если вы не отметите опцию «Включить корень в пакет», он установит содержимое Confused.app в / Applications - то есть вы получите папку / Applications / Contents. Вероятно, это то, что сделал ваш тест без опции.

Предполагаемое использование с отключенным параметром «Включить корневой каталог» заключается в том, что вы создадите папку прокси-приложений на своем компьютере сборки, определите ее в качестве источника полезной нагрузки и поместите приложение в эту папку. Это более полезно, если вы устанавливаете несколько приложений одновременно или устанавливаете в места, отличные от / Applications (например, создайте корневую папку прокси-сервера, создайте подпапки «Приложения» и «Поддержка библиотек / приложений» и укажите место установки «/»).

1 голос
/ 26 января 2013

Или ... (тот же ответ, что и выше, но сформулированный иначе, что может сделать его более понятным):

«Включить корень в пакет» (IRIP) применяется только к каталогам или вещам, которые являются каталогами, то есть под пакетами и пакетами приложений.

Когда вы устанавливаете простой файл, флаг IRIP устанавливается, но отображается серым цветом: у вас нет выбора, указанный файл будет установлен в месте назначения.

Когда вы устанавливаете каталог, флаг IRIP не отображается серым цветом, а редактируется: - если установлено: каталог плюс его содержимое установлены в месте назначения - при очистке: в месте назначения установлено только содержимое каталога

...