Справочная информация по формату файла определения сборки
Определение сборки и определение сборки Справочные ассеты являются JSON файлы. Вы можете редактировать файлы ассетов внутри Unity Editor с использованием Inspector окно, но вы также можете изменить JSON содержимое непосредственно с внешним инструментом.
Определение сборки JSON
Определение сборки представляет собой объект JSON со следующими полями:
| Ключ | Тип | Требуется | Описание |
|---|---|---|---|
allowUnsafeCode |
логическое | Факультативно | False по умолчанию. Дополнительную информацию о значении этой опции см. в Разрешить «небезопасный» код в Общие параметры. |
autoReferenced |
логическое | Факультативно | По умолчанию True. Дополнительные сведения о значении этой опции см. в Auto Referenced в Общие варианты. |
defineConstraints |
string[] | Факультативно | Может быть пустым. Дополнительные сведения см. в Определение ограничений. |
excludePlatforms |
string[] | Факультативно | Строки с именами платформ для исключения или пустой массив. Массив excludePlatforms должен быть пустым, если includePlatforms содержит значения. Допустимыми строками с именами платформ являются свойства AssemblyDefinitionPlatform.Name массива объектов AssemblyDefinitionPlatform, возвращенных CompilationPipeline.GetAssemblyDefinitionPlatforms. Допустимы только платформы с установленной поддержкой сборки для текущего Редактора. Дополнительные сведения см. в разделе Платформы. |
includePlatforms |
string[] | Факультативно | Строки названия платформы для включения или пустой массив. Массив includePlatforms должен быть пустым, если excludePlatforms содержит значения. Допустимыми строками названия платформы являются свойства AssemblyDefinitionPlatform.Name массива объектов AssemblyDefinitionPlatform, возвращенных CompilationPipeline.GetAssemblyDefinitionPlatforms. Допустимы только платформы с установленной поддержкой сборки для текущего Редактора. Дополнительные сведения см. в разделе Платформы. |
name |
строка | Требуется | Дополнительные сведения см. в Имя. |
noEngineReferences |
логическое | Факультативно | False по умолчанию. Для получения дополнительной информации о значении этой опции, см. No Engine References в Общие варианты. |
overrideReferences |
логическое | Факультативно | False по умолчанию. Устанавливает true, если precompiledReferences содержит значения. Дополнительные сведения о значении этого параметра см. в Переопределение ссылок в Общие параметры. |
precompiledReferences |
string[] | Факультативно | Имена файлов библиотек DLL, на которые делается ссылка, включая расширение, но без других элементов пути. Может быть пустым. Этот массив игнорируется, если overrideReferences не установлен в true. Для более подробной информации см. Ссылки на сборки. |
references |
string[] | Факультативно | Ссылки на другие сборки, созданные с помощью ассетов определения сборки. GUID Определение файла ассета или имя сборки, как определено в определении файла ассета. name поле Определения сборки. Вы должны использовать одну и ту же форму для всех ссылок в списке. Может быть пустым.Вы можете использовать AssetDatabase.AssetPathToGUID функции для получения GUID ассета. GUID является также частью метаданных, связанных с каждым ассетом. Обратите внимание, что редактор отображает Использование GUIDs вариант в Ассамблее Определение Inspector. Этот вариант не сериализирован в соответствующем JSON Вместо этого выбор производится по форме ссылки, найденной в файле. Для получения дополнительных сведений см. Ссылки на сборки. |
versionDefines |
object[] | Факультативно | Содержит объект для каждого определения версии. Этот объект имеет три поля:
|
Пример с именами сборок и включенными платформами
В следующем примере Определение сборки JSON использует имена сборок для ссылок на другие Определения сборки и ключ includePlatforms для указания массива включенных платформ:
{
"name": "BeeAssembly",
"references": [
"Unity.CollabProxy.Editor",
"AssemblyB",
"UnityEngine.UI",
"UnityEngine.TestRunner",
"UnityEditor.TestRunner"
],
"includePlatforms": [
"Android",
"LinuxStandalone64",
"WebGL"
],
"excludePlatforms": [],
"overrideReferences": true,
"precompiledReferences": [
"Newtonsoft.Json.dll",
"nunit.framework.dll"
],
"autoReferenced": false,
"defineConstraints": [
"UNITY_2019",
"UNITY_INCLUDE_TESTS"
],
"versionDefines": [
{
"name": "com.unity.ide.vscode",
"expression": "[1.7,2.4.1]",
"define": "MY_SYMBOL"
},
{
"name": "com.unity.test-framework",
"expression": "[2.7.2-preview.8]",
"define": "TESTS"
}
],
"noEngineReferences": false
}
Пример с GUIDs и исключенными платформами
В следующем примере определения сборки JSON используется сборка GUIDs для ссылок на другие определения сборки и ключ excludePlatforms для указания массива исключенных платформ:
{
"name": "BeeAssembly",
"references": [
"GUID:17b36165d09634a48bf5a0e4bb27f4bd",
"GUID:b470eee7144904e59a1064b70fa1b086",
"GUID:2bafac87e7f4b9b418d9448d219b01ab",
"GUID:27619889b8ba8c24980f49ee34dbb44a",
"GUID:0acc523941302664db1f4e527237feb3"
],
"includePlatforms": [],
"excludePlatforms": [
"iOS",
"macOSStandalone",
"tvOS"
],
"allowUnsafeCode": false,
"overrideReferences": true,
"precompiledReferences": [
"Newtonsoft.Json.dll",
"nunit.framework.dll"
],
"autoReferenced": false,
"defineConstraints": [
"UNITY_2019",
"UNITY_INCLUDE_TESTS"
],
"versionDefines": [
{
"name": "com.unity.ide.vscode",
"expression": "[1.7,2.4.1]",
"define": "MY_SYMBOL"
},
{
"name": "com.unity.test-framework",
"expression": "[2.7.2-preview.8]",
"define": "TESTS"
}
],
"noEngineReferences": false
}
Сборка Определение Ссылка JSON
Ссылка на определение сборки представляет собой объект JSON с только одним обязательным полем: строка, называемая reference. Она указывает сборку, на которую делается ссылка, либо по имени сборки, либо по определению сборки asset GUID. Вы можете использовать функцию AssetDatabase.AssetPathToGUID для получения GUID ассета. GUID также является частью метаданных, связанных с каждым ассетом.
Следующий пример ссылки на определение сборки ссылается на другой ассет по имени:
{
"reference": "AssemblyA"
}
Следующий пример Справочного определения сборки ссылается на другой ассет по ассету GUID:
{
"reference": "GUID:f4de40948f4904ecb94b59dd38aab8a1"
}