Создайте сборку .NET для развертывания вне MATLAB
Внимание
Эта функция поддерживается только в Windows® операционные системы.
compiler.build.dotNETAssembly(
создает сборку .NET с помощью MATLAB® функции, заданные Files
)Files
.
compiler.build.dotNETAssembly(
создает сборку .NET с дополнительными опциями, заданными с помощью одного или нескольких аргументов имя-значение. Опции включают имя класса, выходную директорию и дополнительные файлы, которые нужно включить.Files
,Name,Value
)
compiler.build.dotNETAssembly(
создает сборку .NET с сопоставлением классов, заданным с помощью ClassMap
)container.Map
ClassMap объекта
.
compiler.build.dotNETAssembly(
создает сборку .NET с помощью ClassMap
,Name,Value
)ClassMap
и дополнительные опции, заданные с помощью одного или нескольких аргументов в виде имя-значение. Опции включают имя сборки, выходную директорию и дополнительные файлы для включения.
compiler.build.dotNETAssembly(
создает сборку .NET с опциями, заданными с помощью opts
)compiler.build.DotNetAssemblyOptions
opts объекта
. Вы не можете задать какие-либо другие опции, используя аргументы имя-значение.
Создайте сборку .NET в системе Windows с помощью файла функции, который генерирует магический квадрат.
В MATLAB найдите функцию MATLAB, которую вы хотите развернуть как сборку .NET. В данном примере используйте файл magicsquare.m
расположен в
.matlabroot
\ extern\примеры\компилятор
appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');
Создайте сборку .NET с помощью compiler.build.dotNETAssembly
команда.
compiler.build.dotNETAssembly(appFile);
Функция сборки генерирует следующие файлы в папке с именем magicsquaredotNETAssembly
в вашей текущей рабочей директории:
GettingStarted.html
- HTML, содержащий информацию об интеграции сборки.
magicsquare.dll
- Файл библиотеки динамических ссылок, к которому можно получить доступ с помощью mwArray
API.
magicsquare.xml
- XML-файл, содержащий документацию для mwArray
сборки.
magicsquare_overview.html
- HTML, содержащий требования для доступа к компоненту и для генерации аргументов с помощью mwArray
иерархия классов.
magicsquareNative.dll
- Файл библиотеки динамических ссылок, к которому можно получить доступ с помощью собственного API.
magicsquareNative.xml
- XML-файл, содержащий документацию для собственной сборки.
magicsquareVersion.cs
- Файл C #, содержащий информацию о версии.
mccExcludedFiles.log
- Файл журнала, содержащий список функций тулбокса, не включенных в приложение. Для получения информации о не поддерживаемых функциях смотрите MATLAB Compiler Limitations.
readme.txt
- Текстовый файл, содержащий информацию о упаковке и интерфейсе.
requiredMCRProducts.txt
- Текстовый файл, содержащий идентификаторы продуктов, требуемых MATLAB Runtime для запуска приложения.
unresolvedSymbols.txt
- Текстовый файл, содержащий информацию о неразрешенных символах.
Создайте сборку .NET в системе Windows и настройте ее с помощью аргументов имя-значение.
В данном примере используйте файл magicsquare.m
расположен в
.matlabroot
\ extern\примеры\компилятор
appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');
Создайте сборку .NET с помощью compiler.build.dotNETAssembly
команда. Используйте аргументы имя-значение, чтобы задать имя и версию сборки, добавить MAT-файл и включить подробный выход.
compiler.build.dotNETAssembly(appFile,'AssemblyName','MyMagicSquare',... 'AssemblyVersion','2.0',... 'AdditionalFiles','myvars.mat',... 'Verbose','on');
Создайте сборку .NET в системе Windows с помощью карты классов и нескольких файлов функции.
Создайте containers.Map
объект, ключи которого являются именами классов и значения которого являются местоположениями файлов функции.
cmap = containers.Map; cmap('Class1') = {'exampleFcn1.m','exampleFcn2.m'}; cmap('Class2') = {'exampleFcn3.m','exampleFcn4.m'};
Создайте сборку .NET с помощью compiler.build.dotNETAssembly
команда.
compiler.build.dotNETAssembly(cmap);
Можно также задать опции с помощью аргументов имя-значение при построении .NET сборки.
compiler.build.dotNETAssembly(cmap,'AssemblyName','MyMagicSquare',... 'AssemblyVersion','2.0',... 'AdditionalFiles','myvars.mat',... 'Verbose','on');
Создайте несколько сборок .NET в системе Windows с помощью compiler.build.DotNETAssemblyOptions
объект.
В данном примере используйте файл magicsquare.m
расположен в
.matlabroot
\ extern\примеры\компилятор
appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');
Создайте DotNETAssemblyOptions
объект, использующий appFile
. Используйте аргументы имя-значение, чтобы задать общую выходную директорию, сгенерировать архив сборки отдельно и включить подробный выход.
opts = compiler.build.DotNETAssemblyOptions(appFile,... 'OutputDir','D:\Documents\MATLAB\work\dotNETBatch',... 'EmbedArchive','off',... 'Verbose','on')
opts =
DotNETAssemblyOptions with properties:
AssemblyName: 'example.magicsquare'
AssemblyVersion: '1.0.0.0'
ClassMap: [1×1 containers.Map]
DebugBuild: off
EmbedArchive: off
EnableRemoting: off
SampleGenerationFiles: {}
StrongNameKeyFile: ''
AdditionalFiles: {}
AutoDetectDataFiles: on
Verbose: on
OutputDir: 'D:\Documents\MATLAB\work\dotNETBatch'
Class Map Information
magicsquareClass: {'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'}
Создайте сборку .NET с помощью DotNETAssemblyOptions
объект.
compiler.build.dotNETAssembly(opts);
Чтобы скомпилироваться с использованием файла функции myMagic2.m
с теми же опциями используйте запись через точку для изменения ClassMap
существующего COMComponentOptions
объект перед повторным запуском функции сборки.
remove(opts.ClassMap, keys(opts.ClassMap)); opts.ClassMap('myMagic2Class') = 'myMagic2.m'; compiler.build.dotNETAssembly(opts);
Путем изменения ClassMap
аргумент и перекомпиляция, можно скомпилировать несколько компонентов с помощью одного и того же объекта опции.
Создайте сборку .NET в системе Windows и сохраните информацию о типе сборки, сгенерированных файлах и опциях сборки в compiler.build.Results
объект.
Скомпилируйтесь с использованием файловой magicsquare.m
расположен в
.matlabroot
\ extern\примеры\компилятор
results = compiler.build.dotNETAssembly('magicsquare.m')
results = Results with properties: BuildType: 'dotNETAssembly' Files: {4×1 cell} Options: [1×1 compiler.build.DotNETAssemblyOptions]
The Files
свойство содержит пути к следующим скомпилированным файлам:
magicsquare.dll
magicsquareNative.dll
magicsquare_overview.dll
GettingStarted.html
Files
- Файлы, реализующие функции MATLABФайлы, реализующие функции MATLAB, заданные как вектор символов, строковый скаляр, строковые массивы или массив ячеек векторов символов. Пути к файлам могут быть относительно текущей рабочей директории или абсолютными. Файлы должны иметь .m
расширение.
Пример: ["myfunc1.m","myfunc2.m"]
Типы данных: char
| string
| cell
ClassMap
- Карта классовcontainers.Map
объектКарта классов, заданная как containers.Map
объект. Ключи map являются именами классов, и каждое значение является набором файлов, сопоставленных с соответствующим классом. Файлы должны иметь .m
расширение.
Пример: cmap
opts
- опции сборки сборки .NETcompiler.build.DotNetAssemblyOptions
объект.NET сборку опций, заданную как compiler.build.DotNETAssemblyOptions
объект.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'Verbose','on'
'AdditionalFiles'
- Дополнительные файлыДополнительные файлы для включения в сборку .NET, заданные как вектор символов, строковый скаляр, строковые массивы или массив ячеек векторов символов. Пути к файлам могут быть относительно текущей рабочей директории или абсолютными.
Пример: 'AdditionalFiles',["myvars.mat","data.txt"]
Типы данных: char
| string
| cell
'AssemblyName'
- Имя сборки .NETИмя сборки .NET, заданное как вектор символов или строковый скаляр. Задайте 'AssemblyName'
как пространство имен, которое является разделенным периодами списком, таким как companyname.groupname.component
. Для имени сгенерированной библиотеки задается последняя запись списка, разделенного периодами. Имя должно начинаться с буквы и содержать только буквенные символы и точки.
Пример: 'AssemblyName','mathworks.dotnet.mymagic'
Типы данных: char
| string
'AssemblyVersion'
- Версия сборки'1.0.0.0'
(по умолчанию) | символьный вектор | строковый скалярВерсия сборки, заданная как вектор символов или строковый скаляр. Для получения информации об управлении версиями с помощью MATLAB Compiler SDK™, смотрите Versioning.
Пример: 'AssemblyVersion','4.0'
Типы данных: char
| string
'AutoDetectDataFiles'
- Флаг для автоматического включения файлов данных'on'
(по умолчанию) | логическое значение включения/выключенияФлаг для автоматического включения файлов данных, заданный как 'on'
или 'off'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Если вы задаете это свойство равным 'on'
, затем файлы данных, которые вы предоставляете в качестве входов для определенных функций (таких как load
и fopen
) автоматически включаются в сборку .NET.
Если вы задаете это свойство равным 'off'
, затем необходимо добавить файлы данных в сборку с помощью AdditionalFiles
опция.
Пример: 'AutoDetectDataFiles','off'
Типы данных: logical
'ClassName'
- Имя класса .NETИмя класса .NET, заданное как вектор символов или строковый скаляр. Вы не можете задать эту опцию, если используете ClassMap
вход. Имена классов должны соответствовать требованиям к наименованию классов .NET.
Значение по умолчанию является именем первого файла, перечисленного в Files
аргумент, добавленный с помощью Class
.
Пример: 'ClassName','magicsquareClass'
Типы данных: char
| string
'DebugBuild'
- Флаг для включения отладки символов'off'
(по умолчанию) | логическое значение включения/выключенияФлаг для включения отладки символов, заданный как 'on'
или 'off'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Если вы задаете это свойство равным 'on'
затем скомпилированная сборка содержит символы отладки.
Если вы задаете это свойство равным 'off'
, тогда скомпилированная сборка не содержит символов отладки.
Пример: 'DebugBuild','on'
Типы данных: logical
'EmbedArchive'
- Флаг для встраивания архива сборки'on'
(по умолчанию) | логическое значение включения/выключенияФлаг для встраивания архива сборки, заданный как 'on'
или 'off'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Если вы задаете это свойство равным 'on'
затем функция встраивает архив сборки в сборку .NET.
Если вы задаете это свойство равным 'off'
затем функция генерирует архив сборки как отдельный файл.
Пример: 'EmbedArchive','off'
Типы данных: logical
'EnableRemoting'
- Флаг для управления типом удаленного взаимодействия'off'
(по умолчанию) | логическое значение включения/выключенияФлаг для управления типом удаленного взаимодействия сборки, заданный как 'on'
или 'off'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Если вы задаете это свойство равным 'on'
затем функция создает удаляемую сборку.
Если вы задаете это свойство равным 'off'
затем функция создает сборку, которая не является удаляемой.
Пример: 'EnableRemoting','on'
Типы данных: logical
'OutputDir'
- Путь к выходной директорииПуть к выходу директории, где сохраняются файлы сборки, задается в виде вектора символов или строкового скаляра. Путь может быть относительно текущей рабочей директории или абсолютным.
Именем по умолчанию для папки сборки является имя сборки, добавленное в dotNETAssembly
.
Пример: 'OutputDir','D:\Documents\MATLAB\work\mymagicdotNETAssembly'
Типы данных: char
| string
'SampleGenerationFiles'
- Образцы файлов MATLABMATLAB выборки, используемые для генерации файлов драйверов .NET для функций, включенных в сборку, заданные как вектор символов, строковый скаляр, строковые массивы или массив ячеек из векторов символов. Пути к файлам могут быть относительно текущей рабочей директории или абсолютными. Файлы должны иметь .m
расширение. Для получения дополнительной информации и ограничений см. Пример создания файла драйвера.
Пример: 'SampleGenerationFiles',["sample1.m","sample2.m"]
Типы данных: char
| string
| cell
'StrongNameKeyFile'
- Путь к ключу шифрованияПуть к файлу ключа шифрования, используемому для подписания общей сборки, заданный как вектор символов или строковый скаляр. Если значение пусто, функция создает частную сборку. Путь к файлу может быть относительно текущей рабочей директории или абсолютным.
Пример: 'StrongNameKeyFile','sgKey.snk'
Типы данных: char
| string
'Verbose'
- Флаг для управления подробностями сборки'off'
(по умолчанию) | логическое значение включения/выключенияФлаг для управления подробностями сборки, заданный как 'on'
или 'off'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Если вы задаете это свойство равным 'on'
, затем в командном окне MATLAB отображается информация о прогрессе, указывающая на выход компилятора в процессе сборки.
Если вы задаете это свойство равным 'off'
затем командное окно не отображает информацию о прогрессе.
Пример: 'Verbose','on'
Типы данных: logical
results
- Результаты сборкиcompiler.build.Results
объектРезультаты построения, возвращенные как compiler.build.Results
объект. The Results
объект состоит из:
Тип сборки, который 'dotNETAssembly'
Пути к следующим скомпилированным файлам:
AssemblyName
.dll
AssemblyName
Native.dll
AssemblyName
_overview.dll
GettingStarted.html
Опции сборки, заданные как DotNETAssemblyOptions
объект
Эта функция поддерживается только в операционных системах Windows.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.