Unity 6.3
0 онлайн 104 гостей 3 в системе
Вход
Пакеты и управление пакетами Шаг 242 из 281

Ссылка на манифест пакета

Unity Editor использует файл манифеста пакета (package.json) для управления информацией о конкретной версии конкретного пакета.

Использование манифеста пакета JSON (JavaScript Объектная нотация) синтаксис для описания того, что находится внутри пакета. Формат файла похож на нпм’s package.json формата, но использует иную семантику для некоторых из своих свойств. См. пример для примерного файла манифеста пакета.

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

Требуемые свойства

Если эти свойства отсутствуют, то либо реестр отказывается от пакета при его публикации, либо Package Manager не может получить или загрузить пакет.

Свойство JSON Тип Описание
имя Струна Уникальный многокомпонентный идентификатор, соответствующий Unity Package Manager соглашение о именовании, которое использует обратную нотацию доменных имен. Дополнительные сведения о соглашении о именованиях см. Руководство по именам пакетов.

Примечание: name свойство отличается от удобное для пользователя отображаемое имя которое появляется в Package Manager окно панель списка и верхней части панель деталейname свойство отображается полностью в панель деталей как Техническое название значение, в Технические детали вкладка. В Inspector окно, только заключительная часть пакета name свойство отображается в Имя поле.
версия Струна Номер версии пакета в формате "major.minor.patch".

Например, "3.2.1" указывает, что это третий главный выпуск, второй второстепенный выпуск и первое исправление.

Это значение должно соответствовать Семантическое версионирование. Дополнительные сведения см. в Версирование пакетов.

Рекомендуемые свойства

Package Manager может устанавливать пакеты в проект, даже если рекомендованные свойства отсутствуют или имеют неверные значения.

Однако рекомендуется назначать значения для этих свойств, чтобы убедиться, что пакет можно обнаружить, и обеспечить пользователям более удобный интерфейс.

Свойство JSON Тип Описание
описание Струна Краткое описание пакета. Это текст, который появляется в окне пакета. панель деталей 1998 года Package Manager окно. Это поле поддерживает UTF–8 Это означает, что вы можете использовать специальные коды символов форматирования, такие как перерывы строк (\n) и пули (\u25AA).
displayName Струна Удобное для пользователя имя, которое отображается в Unity Editor, как это указано в Project окно и Package Manager окно.

Примеры displayName значения являются Unity Timeline, ProBuilder, и Покупка в приложении.
единица Струна Указывает на самую низкую версию Unity, с которой совместим пакет. Если он опущен, то Package Manager считает пакет совместимым со всеми версиями Unity.

Ожидаемый формат — "major.minor" (например, "2018.3"). Unity 6.0 и более поздние версии следуют тому же формату "####.#". Например, технический номер версии для Unity 6.0 — "6000.0".

Для указания на конкретную патч, включите также свойство unityRelease, описанное в Необязательные свойства.

Примечание: Установка пакета в проекте с использованием редактора, имеющего значение ниже значения, указанного в unity, может вызвать проблемы с компиляцией или совместимостью.

Необязательные свойства

Эти свойства необязательны, то есть их можно опустить. Однако, если они присутствуют, они должны иметь допустимое значение.

Свойство JSON Тип Описание
автор Объект или строка Автор пакета. Это свойство поддерживает только одного автора.

Это свойство имеет одно обязательное поле, имя, и два необязательных поля, электронная почта и адрес.

Вы можете указать эти поля как объект JSON или сжать их в одну строку, ключ которой автор.

Пример объекта:
{
"name" : "John Doe",
"email" : "john.doe@example.com",
"url" : "http://john.doe.example.com/"
}

Пример строки:
"John Doe <john.doe@example.com> (http://john.doe.example.com/)"
changelogUrl Струна Пользовательское местоположение для журнала изменений этого пакета, указанное как URL. Например:
"changelogUrl": "https://example.com/changelog.html"

Примечание: Когда Package Manager не может достичь расположения URL (например, если возникла проблема с сетью), он делает следующее:

- Если пакет установлен, Package Manager открывает просмотрщик файлов, отображающий файл CHANGELOG.md из кэша пакета.
- Если пакет не установлен, Package Manager отображает предупреждение о том, что автономный журнал изменений недоступен.
зависимости Объект Карта зависимостей пакетов. Ключи — это имена пакетов, а значения — это конкретные версии. Они идентифицируют другие пакеты, от которых зависит данный пакет.

Примечание: Package Manager не поддерживает синтаксис диапазонов, только версии SemVer.
documentationUrl Струна Пользовательское расположение для документации пакета, указанное как URL. Например:
"documentationUrl": "https://example.com/"

Примечание: Когда Package Manager не может достичь расположения URL (например, из-за проблемы с сетью), он выполняет следующие действия:

- Если пакет установлен, Package Manager открывает просмотрщик файлов, отображающий папку Documentation~ из кэша пакета.
- Если пакет не установлен, Package Manager отображает предупреждение о том, что документация для автономного режима недоступна.
hideInEditor Булева функция По умолчанию, Project окно скрывает ассеты пакета и исключает их из результатов, когда вы используете Выбор объекта в 2000 году Inspector установить это свойство на "false" чтобы убедиться, что ассеты этого пакета всегда видны.
ключевые слова Массив строк Массив ключевых слов, используемых при поиске Package Manager в APIs. Это помогает пользователям найти соответствующие пакеты.
лицензия Струна Идентификатор для лицензии OSS, использующий формат идентификатора SPDXили строку типа «Ссылка на файл LICENSE.md».

Примечание: Если вы пропустите это свойство в манифесте пакета, ваш пакет должен содержать файл LICENSE.md.
licensesUrl Струна Пользовательское расположение для информации о лицензии этого пакета, указанное как URL. Например:
"licensesUrl": "https://example.com/licensing.html"

Примечание: Если Package Manager не может достичь расположения URL (например, из-за проблемы с сетью), он выполняет следующие действия:

- Если пакет установлен, он открывает просмотрщик файлов, отображающий файл LICENSE.md из кэша пакета.
- Если пакет не установлен, Package Manager отображает предупреждение о том, что информация о лицензии в автономном режиме недоступна.
образцы Массив объектов Список образцов, включенных в пакет. Каждый образец имеет отображаемое имя, описание и путь к папке образцов, начиная с Samples~ папка:

{
"displayName": "<name-to-appear-in-the-UI>",
"description": "<brief-description>",
"path": "Samples~/<sample-subfolder>"
}

Более подробную информацию см. Создание образцов для пакетов.
тип Струна Зарезервировано для внутреннего использования.
unityRelease Струна Часть a Unity с указанием конкретного выпуска Unity Вы можете использовать это свойство, когда обновленный пакет требует изменений, внесенных во время установки. Unity цикла разработки альфа/бета. Это может произойти, если пакет нуждается в вновь введенных APIs, или использует существующие APIs которые изменились таким образом, что они не являются обратно совместимыми без API обновитель Правила.

Ожидаемый формат: "<update><release> (например, "0b4").

Примечание: Если вы пропустите рекомендованную единица свойство, это свойство не имеет эффекта.

Пакет, который не совместим с Unity не появляется в Package Manager окно.

Пример манифеста пакета

{
  "name": "com.[company-name].[package-name]",
  "version": "1.2.3",
  "displayName": "Package Example",
  "description": "This is an example package",
  "unity": "2019.1",
  "unityRelease": "0b5",
  "documentationUrl": "https://example.com/",
  "changelogUrl": "https://example.com/changelog.html",
  "licensesUrl": "https://example.com/licensing.html",
  "dependencies": {
    "com.[company-name].some-package": "1.0.0",
    "com.[company-name].other-package": "2.0.0"
 },
 "keywords": [
    "keyword1",
    "keyword2",
    "keyword3"
  ],
  "author": {
    "name": "Unity",
    "email": "unity@example.com",
    "url": "https://www.unity3d.com"
  }
}

Дополнительные ресурсы